In [7]:
In [1]:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
from DataProcessingMethods.DataPrepMultiClassv1 import prepare_data_pipeline
# Load the Forest Cover Type dataset
dataset_name = "Forest Cover Type Dataset"
df = pd.read_csv("Datasets/covtype.csv", na_values="?") # Adjust path if needed
# Display basic information about the dataset
print(f"\n{dataset_name} shape: {df.shape}")
print(f"Number of classes in Cover_Type: {df['Cover_Type'].nunique()}")
print(f"Class distribution:\n{df['Cover_Type'].value_counts()}")
print("\nSample data:")
print(df.head())
# Define features for analysis
# Specify only the continuous numeric features for outlier detection
numeric_features = [
'Elevation', 'Aspect', 'Slope',
'Horizontal_Distance_To_Hydrology', 'Vertical_Distance_To_Hydrology',
'Horizontal_Distance_To_Roadways',
'Hillshade_9am', 'Hillshade_Noon', 'Hillshade_3pm',
'Horizontal_Distance_To_Fire_Points'
]
# Features to display distributions for
dist_features = [
'Slope', 'Horizontal_Distance_To_Hydrology', 'Vertical_Distance_To_Hydrology',
'Horizontal_Distance_To_Roadways', 'Hillshade_9am', 'Hillshade_Noon', 'Hillshade_3pm',
'Horizontal_Distance_To_Fire_Points'
]
# Target column
target = "Cover_Type"
# Since you don't want outlier removal for binary features (0/1),
# only include continuous features in the outlier detection
outlier_features = [
'Elevation', 'Aspect', 'Slope',
'Horizontal_Distance_To_Hydrology', 'Vertical_Distance_To_Hydrology',
'Horizontal_Distance_To_Roadways',
'Hillshade_9am', 'Hillshade_Noon', 'Hillshade_3pm',
'Horizontal_Distance_To_Fire_Points'
]
# Run the data preparation pipeline
print("\nRunning data preparation pipeline...")
#df_no_outliers = prepare_data_pipeline(
# df=df,
# list_features_specialise_outliers=outlier_features, # Only continuous features for outlier detection
# numeric_features=numeric_features,
# dist_features=dist_features,
# target=target
#)
# Print summary of results
#print("\nPrepared dataset shape:", df_no_outliers.shape)
#print("\nClass distribution after preparation:")
#print(df_no_outliers[target].value_counts())
print("\nDone! Check for generated visualizations.")
Forest Cover Type Dataset shape: (581012, 55) Number of classes in Cover_Type: 7 Class distribution: Cover_Type 2 283301 1 211840 3 35754 7 20510 6 17367 5 9493 4 2747 Name: count, dtype: int64 Sample data: Elevation Aspect Slope Horizontal_Distance_To_Hydrology \ 0 2596 51 3 258 1 2590 56 2 212 2 2804 139 9 268 3 2785 155 18 242 4 2595 45 2 153 Vertical_Distance_To_Hydrology Horizontal_Distance_To_Roadways \ 0 0 510 1 -6 390 2 65 3180 3 118 3090 4 -1 391 Hillshade_9am Hillshade_Noon Hillshade_3pm \ 0 221 232 148 1 220 235 151 2 234 238 135 3 238 238 122 4 220 234 150 Horizontal_Distance_To_Fire_Points ... Soil_Type32 Soil_Type33 \ 0 6279 ... 0 0 1 6225 ... 0 0 2 6121 ... 0 0 3 6211 ... 0 0 4 6172 ... 0 0 Soil_Type34 Soil_Type35 Soil_Type36 Soil_Type37 Soil_Type38 \ 0 0 0 0 0 0 1 0 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 0 4 0 0 0 0 0 Soil_Type39 Soil_Type40 Cover_Type 0 0 0 5 1 0 0 5 2 0 0 2 3 0 0 2 4 0 0 5 [5 rows x 55 columns] Running data preparation pipeline... Done! Check for generated visualizations.
In [6]:
df_no_outliers.to_csv("Datasets/covtypeCLEANED.csv", index=False)
print("Done")
Done
In [2]:
from GenerationMethods.MultiClassification.MultiVAE2 import augment_dataframe_vae_enhanced
df_no_outliers = pd.read_csv("Datasets/covtypeCLEANED.csv")
# Run the augmentation
original_train, augmented_train, test_set, success = augment_dataframe_vae_enhanced(
df=df_no_outliers,
target='Cover_Type',
test_size=0.25,
random_state=42,
n_classes_to_augment=4,
ratio_limit=0.5,
diminishing_factor=0.65,
vae_epochs=2,
vae_batch_size=64,
latent_dim=48,
hidden_dims=[512, 256, 128],
temperature=0.8,
matching_factor=0.25,
early_stopping_patience=50
)
if success:
# CORRECT USAGE - This gets numeric features directly from the returned DataFrame
numeric_features = augmented_train.select_dtypes(include=['number']).columns
# Exclude the target and synthetic columns if they exist and are numeric
columns_to_exclude = []
if 'quality' in numeric_features:
columns_to_exclude.append('quality')
if 'synthetic' in numeric_features:
columns_to_exclude.append('synthetic')
# Filter numeric features to exclude certain columns
if columns_to_exclude:
numeric_features = [col for col in numeric_features if col not in columns_to_exclude]
# Round numeric features
augmented_train[numeric_features] = augmented_train[numeric_features].round(2)
# Save outputs
original_train.to_csv("OutputTrainingSets/original_trainVAEForestFINAL.csv", index=False)
augmented_train.to_csv("OutputTrainingSets/augmented_trainVAEForestFINAL.csv", index=False)
test_set.to_csv("OutputTrainingSets/test_setVAEForestFINAL.csv", index=False)
else:
print("Augmentation failed. Check the error messages.")
2025-04-14 14:39:43.462946: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:479] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered 2025-04-14 14:39:43.489860: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:10575] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered 2025-04-14 14:39:43.489913: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1442] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered 2025-04-14 14:39:43.507414: I tensorflow/core/platform/cpu_feature_guard.cc:210] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations. To enable the following instructions: AVX2 AVX512F FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags. 2025-04-14 14:39:44.597447: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT
Starting enhanced VAE-based augmentation... Target values range: [1, 7], unique classes: 7 Warning: max_label 7 >= num_classes 7, adjusting num_classes to 8 Training data shape: (427285, 54) Test data shape: (142429, 54) Training enhanced VAE model... Using 8 classes for one-hot encoding (max label: 7)
2025-04-14 14:39:48.398834: E external/local_xla/xla/stream_executor/cuda/cuda_driver.cc:282] failed call to cuInit: CUDA_ERROR_NO_DEVICE: no CUDA-capable device is detected
Epoch 1/2 5675/5675 ━━━━━━━━━━━━━━━━━━━━ 103s 17ms/step - loss: 0.2908 - val_loss: 0.1185 Epoch 2/2 5675/5675 ━━━━━━━━━━━━━━━━━━━━ 95s 17ms/step - loss: 0.1187 - val_loss: 0.1100 Restoring model weights from the end of the best epoch: 2. Could not load best model weights, using final weights Class distribution: {1: 155577, 2: 208214, 3: 26803, 4: 2060, 5: 6808, 6: 13003, 7: 14820} Classes to augment (from smallest to largest): [4, 5, 6, 7] Class 4: Generating 1030 synthetic samples - Current count: 2060 - Diminishing factor: 1.00 - Theoretical target count: 208214 - Limited by ratio constraint: max 1030 new samples - Final target count: 3090 65/65 ━━━━━━━━━━━━━━━━━━━━ 0s 4ms/step 33/33 ━━━━━━━━━━━━━━━━━━━━ 0s 5ms/step Class 5: Generating 3404 synthetic samples - Current count: 6808 - Diminishing factor: 0.65 - Theoretical target count: 135339 - Limited by ratio constraint: max 3404 new samples - Final target count: 10212 213/213 ━━━━━━━━━━━━━━━━━━━━ 1s 3ms/step 107/107 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step Class 6: Generating 6501 synthetic samples - Current count: 13003 - Diminishing factor: 0.42 - Theoretical target count: 87970 - Limited by ratio constraint: max 6501 new samples - Final target count: 19504 407/407 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step 204/204 ━━━━━━━━━━━━━━━━━━━━ 0s 2ms/step Class 7: Generating 7410 synthetic samples - Current count: 14820 - Diminishing factor: 0.27 - Theoretical target count: 57180 - Limited by ratio constraint: max 7410 new samples - Final target count: 22230 464/464 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step 232/232 ━━━━━━━━━━━━━━━━━━━━ 1s 2ms/step Debug - Synthetic samples shape before inverse transform: (18345, 54) Debug - Synthetic samples range: [2.799956519083935e-06, 0.9997535943984985] Applying quantile matching to synthetic samples... Original DataFrame info: <class 'pandas.core.frame.DataFrame'> RangeIndex: 427285 entries, 0 to 427284 Data columns (total 56 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 Elevation 427285 non-null float64 1 Aspect 427285 non-null float64 2 Slope 427285 non-null float64 3 Horizontal_Distance_To_Hydrology 427285 non-null float64 4 Vertical_Distance_To_Hydrology 427285 non-null float64 5 Horizontal_Distance_To_Roadways 427285 non-null float64 6 Hillshade_9am 427285 non-null float64 7 Hillshade_Noon 427285 non-null float64 8 Hillshade_3pm 427285 non-null float64 9 Horizontal_Distance_To_Fire_Points 427285 non-null float64 10 Wilderness_Area1 427285 non-null float64 11 Wilderness_Area2 427285 non-null float64 12 Wilderness_Area3 427285 non-null float64 13 Wilderness_Area4 427285 non-null float64 14 Soil_Type1 427285 non-null float64 15 Soil_Type2 427285 non-null float64 16 Soil_Type3 427285 non-null float64 17 Soil_Type4 427285 non-null float64 18 Soil_Type5 427285 non-null float64 19 Soil_Type6 427285 non-null float64 20 Soil_Type7 427285 non-null float64 21 Soil_Type8 427285 non-null float64 22 Soil_Type9 427285 non-null float64 23 Soil_Type10 427285 non-null float64 24 Soil_Type11 427285 non-null float64 25 Soil_Type12 427285 non-null float64 26 Soil_Type13 427285 non-null float64 27 Soil_Type14 427285 non-null float64 28 Soil_Type15 427285 non-null float64 29 Soil_Type16 427285 non-null float64 30 Soil_Type17 427285 non-null float64 31 Soil_Type18 427285 non-null float64 32 Soil_Type19 427285 non-null float64 33 Soil_Type20 427285 non-null float64 34 Soil_Type21 427285 non-null float64 35 Soil_Type22 427285 non-null float64 36 Soil_Type23 427285 non-null float64 37 Soil_Type24 427285 non-null float64 38 Soil_Type25 427285 non-null float64 39 Soil_Type26 427285 non-null float64 40 Soil_Type27 427285 non-null float64 41 Soil_Type28 427285 non-null float64 42 Soil_Type29 427285 non-null float64 43 Soil_Type30 427285 non-null float64 44 Soil_Type31 427285 non-null float64 45 Soil_Type32 427285 non-null float64 46 Soil_Type33 427285 non-null float64 47 Soil_Type34 427285 non-null float64 48 Soil_Type35 427285 non-null float64 49 Soil_Type36 427285 non-null float64 50 Soil_Type37 427285 non-null float64 51 Soil_Type38 427285 non-null float64 52 Soil_Type39 427285 non-null float64 53 Soil_Type40 427285 non-null float64 54 Cover_Type 427285 non-null int64 55 synthetic 427285 non-null bool dtypes: bool(1), float64(54), int64(1) memory usage: 179.7 MB None Synthetic DataFrame info: <class 'pandas.core.frame.DataFrame'> RangeIndex: 18345 entries, 0 to 18344 Data columns (total 56 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 Elevation 18345 non-null float64 1 Aspect 18345 non-null float64 2 Slope 18345 non-null float64 3 Horizontal_Distance_To_Hydrology 18345 non-null float64 4 Vertical_Distance_To_Hydrology 18345 non-null float64 5 Horizontal_Distance_To_Roadways 18345 non-null float64 6 Hillshade_9am 18345 non-null float64 7 Hillshade_Noon 18345 non-null float64 8 Hillshade_3pm 18345 non-null float64 9 Horizontal_Distance_To_Fire_Points 18345 non-null float64 10 Wilderness_Area1 18345 non-null float64 11 Wilderness_Area2 18345 non-null float64 12 Wilderness_Area3 18345 non-null float64 13 Wilderness_Area4 18345 non-null float64 14 Soil_Type1 18345 non-null float64 15 Soil_Type2 18345 non-null float64 16 Soil_Type3 18345 non-null float64 17 Soil_Type4 18345 non-null float64 18 Soil_Type5 18345 non-null float64 19 Soil_Type6 18345 non-null float64 20 Soil_Type7 18345 non-null float64 21 Soil_Type8 18345 non-null float64 22 Soil_Type9 18345 non-null float64 23 Soil_Type10 18345 non-null float64 24 Soil_Type11 18345 non-null float64 25 Soil_Type12 18345 non-null float64 26 Soil_Type13 18345 non-null float64 27 Soil_Type14 18345 non-null float64 28 Soil_Type15 18345 non-null float64 29 Soil_Type16 18345 non-null float64 30 Soil_Type17 18345 non-null float64 31 Soil_Type18 18345 non-null float64 32 Soil_Type19 18345 non-null float64 33 Soil_Type20 18345 non-null float64 34 Soil_Type21 18345 non-null float64 35 Soil_Type22 18345 non-null float64 36 Soil_Type23 18345 non-null float64 37 Soil_Type24 18345 non-null float64 38 Soil_Type25 18345 non-null float64 39 Soil_Type26 18345 non-null float64 40 Soil_Type27 18345 non-null float64 41 Soil_Type28 18345 non-null float64 42 Soil_Type29 18345 non-null float64 43 Soil_Type30 18345 non-null float64 44 Soil_Type31 18345 non-null float64 45 Soil_Type32 18345 non-null float64 46 Soil_Type33 18345 non-null float64 47 Soil_Type34 18345 non-null float64 48 Soil_Type35 18345 non-null float64 49 Soil_Type36 18345 non-null float64 50 Soil_Type37 18345 non-null float64 51 Soil_Type38 18345 non-null float64 52 Soil_Type39 18345 non-null float64 53 Soil_Type40 18345 non-null float64 54 Cover_Type 18345 non-null int64 55 synthetic 18345 non-null bool dtypes: bool(1), float64(54), int64(1) memory usage: 7.7 MB None Augmented DataFrame info: <class 'pandas.core.frame.DataFrame'> RangeIndex: 445630 entries, 0 to 445629 Data columns (total 56 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 Elevation 445630 non-null float64 1 Aspect 445630 non-null float64 2 Slope 445630 non-null float64 3 Horizontal_Distance_To_Hydrology 445630 non-null float64 4 Vertical_Distance_To_Hydrology 445630 non-null float64 5 Horizontal_Distance_To_Roadways 445630 non-null float64 6 Hillshade_9am 445630 non-null float64 7 Hillshade_Noon 445630 non-null float64 8 Hillshade_3pm 445630 non-null float64 9 Horizontal_Distance_To_Fire_Points 445630 non-null float64 10 Wilderness_Area1 445630 non-null float64 11 Wilderness_Area2 445630 non-null float64 12 Wilderness_Area3 445630 non-null float64 13 Wilderness_Area4 445630 non-null float64 14 Soil_Type1 445630 non-null float64 15 Soil_Type2 445630 non-null float64 16 Soil_Type3 445630 non-null float64 17 Soil_Type4 445630 non-null float64 18 Soil_Type5 445630 non-null float64 19 Soil_Type6 445630 non-null float64 20 Soil_Type7 445630 non-null float64 21 Soil_Type8 445630 non-null float64 22 Soil_Type9 445630 non-null float64 23 Soil_Type10 445630 non-null float64 24 Soil_Type11 445630 non-null float64 25 Soil_Type12 445630 non-null float64 26 Soil_Type13 445630 non-null float64 27 Soil_Type14 445630 non-null float64 28 Soil_Type15 445630 non-null float64 29 Soil_Type16 445630 non-null float64 30 Soil_Type17 445630 non-null float64 31 Soil_Type18 445630 non-null float64 32 Soil_Type19 445630 non-null float64 33 Soil_Type20 445630 non-null float64 34 Soil_Type21 445630 non-null float64 35 Soil_Type22 445630 non-null float64 36 Soil_Type23 445630 non-null float64 37 Soil_Type24 445630 non-null float64 38 Soil_Type25 445630 non-null float64 39 Soil_Type26 445630 non-null float64 40 Soil_Type27 445630 non-null float64 41 Soil_Type28 445630 non-null float64 42 Soil_Type29 445630 non-null float64 43 Soil_Type30 445630 non-null float64 44 Soil_Type31 445630 non-null float64 45 Soil_Type32 445630 non-null float64 46 Soil_Type33 445630 non-null float64 47 Soil_Type34 445630 non-null float64 48 Soil_Type35 445630 non-null float64 49 Soil_Type36 445630 non-null float64 50 Soil_Type37 445630 non-null float64 51 Soil_Type38 445630 non-null float64 52 Soil_Type39 445630 non-null float64 53 Soil_Type40 445630 non-null float64 54 Cover_Type 445630 non-null int64 55 synthetic 445630 non-null bool dtypes: bool(1), float64(54), int64(1) memory usage: 187.4 MB None Augmented data summary: - Original samples: 427285 - Synthetic samples: 18345 - Total samples: 445630 Class distribution before: {1: 155577, 2: 208214, 3: 26803, 4: 2060, 5: 6808, 6: 13003, 7: 14820} Class distribution after: {1: 155577, 2: 208214, 3: 26803, 4: 3090, 5: 10212, 6: 19504, 7: 22230}
Saved results to ./output/ 1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 189ms/step
<Figure size 1000x600 with 0 Axes>
In [3]:
from ValidationMethods.MultiClassValidation import validate_synthetic_data_per_class, analyze_target_distribution
from GenerationMethods.MultiClassification.undersampleMajorityClasses import undersample_majority_classes
import pandas as pd
# Load the CSV files generated by the augmentation process.
# (These files are assumed to have been generated using an oversampling method adapted for multi-class data.)
original_train2 = pd.read_csv("OutputTrainingSets/original_trainVAEForestFINAL.csv")
augmented_train2 = pd.read_csv("OutputTrainingSets/augmented_trainVAEForestFINAL.csv")
test_set2 = pd.read_csv("OutputTrainingSets/test_setVAEForestFINAL.csv")
# Apply undersampling before augmentation
df_augmented_train2 = undersample_majority_classes(augmented_train2,
majority_classes=[1, 2],
target_ratio=0.15)
augmented_train2.to_csv("OutputTrainingSets/augmented_trainVAEForestFINAL.csv", index=False)
#print(flag)
#augmented_train2[numeric_features] = augmented_train2[numeric_features].round(2)
# Define the columns to keep: continuous features + target.
continuous_features = ['Elevation', 'Aspect', 'Slope', 'Horizontal_Distance_To_Hydrology', 'Vertical_Distance_To_Hydrology', 'Horizontal_Distance_To_Roadways', 'Hillshade_9am', 'Hillshade_Noon', 'Hillshade_3pm', 'Horizontal_Distance_To_Fire_Points', 'Wilderness_Area1', 'Wilderness_Area2', 'Wilderness_Area3', 'Wilderness_Area4', 'Soil_Type1', 'Soil_Type2', 'Soil_Type3', 'Soil_Type4', 'Soil_Type5', 'Soil_Type6', 'Soil_Type7', 'Soil_Type8', 'Soil_Type9', 'Soil_Type10', 'Soil_Type11', 'Soil_Type12', 'Soil_Type13', 'Soil_Type14', 'Soil_Type15', 'Soil_Type16', 'Soil_Type17', 'Soil_Type18', 'Soil_Type19', 'Soil_Type20', 'Soil_Type21', 'Soil_Type22', 'Soil_Type23', 'Soil_Type24', 'Soil_Type25', 'Soil_Type26', 'Soil_Type27', 'Soil_Type28', 'Soil_Type29', 'Soil_Type30', 'Soil_Type31', 'Soil_Type32', 'Soil_Type33', 'Soil_Type34', 'Soil_Type35', 'Soil_Type36', 'Soil_Type37', 'Soil_Type38', 'Soil_Type39', 'Soil_Type40']
categorical_features = ["Cover_Type"]
cols_to_keep = continuous_features + categorical_features
# Keep only the desired columns and drop rows with missing values.
original_train2 = original_train2[cols_to_keep].dropna()
# For the augmented training set, also keep the "synthetic" column.
augmented_train2 = augmented_train2[cols_to_keep + ['synthetic']].dropna()
test_set2 = test_set2[cols_to_keep].dropna()
target = "Cover_Type"
# Extract synthetic samples from the augmented training set (synthetic == True).
synthetic_samples = augmented_train2[augmented_train2['synthetic'] == True]
# Run the validation analysis comparing original training data against synthetic samples.
metrics = validate_synthetic_data_per_class(
original=original_train2,
synthetic=synthetic_samples,
continuous_features=continuous_features,
categorical_features=categorical_features,
target = target,
num_classes = 4,
distance_threshold=0.5,
density_threshold=0.5,
gamma=1.0,
plot=True
)
print("Validation metrics:")
print(metrics)
print("\n### Target Distribution Analysis on Original Training Set ###")
analyze_target_distribution(original_train2, target=target)
print("\n### Target Distribution Analysis on Augmented Training Set ###")
analyze_target_distribution(augmented_train2, target=target)
print("\n### Target Distribution Analysis on Test Set ###")
analyze_target_distribution(test_set2, target=target)
### Validation for class: 4 ### ### Continuous Features Validation ### Feature: Elevation Original: mean=2224.681, std=101.540 Synthetic: mean=2552.035, std=244.547 KS test: statistic=0.700, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 2552.034553 std 244.546754 min 1869.240000 25% 2372.165000 50% 2587.895000 75% 2747.302500 max 3021.000000 Name: Elevation, dtype: float64
Feature: Aspect Original: mean=137.600, std=87.461 Synthetic: mean=115.970, std=88.486 KS test: statistic=0.211, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 115.969981 std 88.485571 min 0.000000 25% 45.610000 50% 94.175000 75% 165.000000 max 358.000000 Name: Aspect, dtype: float64
Feature: Slope Original: mean=18.610, std=9.280 Synthetic: mean=17.368, std=6.877 KS test: statistic=0.140, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 17.367835 std 6.876850 min 2.000000 25% 12.000000 50% 16.305000 75% 22.000000 max 50.000000 Name: Slope, dtype: float64
Feature: Horizontal_Distance_To_Hydrology Original: mean=105.259, std=139.052 Synthetic: mean=94.667, std=94.635 KS test: statistic=0.231, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 94.667136 std 94.634996 min 0.000000 25% 30.000000 50% 67.000000 75% 150.000000 max 621.890000 Name: Horizontal_Distance_To_Hydrology, dtype: float64
Feature: Vertical_Distance_To_Hydrology Original: mean=40.335, std=58.823 Synthetic: mean=22.769, std=36.872 KS test: statistic=0.202, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 22.769379 std 36.872228 min -87.450000 25% 0.262500 50% 13.000000 75% 37.000000 max 242.100000 Name: Vertical_Distance_To_Hydrology, dtype: float64
Feature: Horizontal_Distance_To_Roadways Original: mean=920.270, std=368.143 Synthetic: mean=1128.825, std=817.765 KS test: statistic=0.226, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 1128.825136 std 817.765398 min 25.160000 25% 551.455000 50% 962.455000 75% 1483.800000 max 6056.680000 Name: Horizontal_Distance_To_Roadways, dtype: float64
Feature: Hillshade_9am Original: mean=228.063, std=24.382 Synthetic: mean=224.608, std=17.487 KS test: statistic=0.244, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 224.607864 std 17.487470 min 157.000000 25% 215.000000 50% 227.000000 75% 237.000000 max 254.000000 Name: Hillshade_9am, dtype: float64
Feature: Hillshade_Noon Original: mean=216.899, std=20.883 Synthetic: mean=220.407, std=19.620 KS test: statistic=0.093, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 220.407398 std 19.620388 min 98.450000 25% 210.000000 50% 223.000000 75% 234.000000 max 254.000000 Name: Hillshade_Noon, dtype: float64
Feature: Hillshade_3pm Original: mean=111.642, std=49.051 Synthetic: mean=115.813, std=35.778 KS test: statistic=0.147, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.00000 mean 115.81266 std 35.77751 min 0.00000 25% 96.00000 50% 117.70500 75% 139.00000 max 213.04000 Name: Hillshade_3pm, dtype: float64
Feature: Horizontal_Distance_To_Fire_Points Original: mean=860.698, std=480.851 Synthetic: mean=1193.648, std=773.064 KS test: statistic=0.172, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 1193.648291 std 773.064062 min 55.550000 25% 633.000000 50% 1036.760000 75% 1599.892500 max 5673.380000 Name: Horizontal_Distance_To_Fire_Points, dtype: float64
Feature: Wilderness_Area1 Original: mean=0.000, std=0.000 Synthetic: mean=0.171, std=0.377 KS test: statistic=0.171, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.170874 std 0.376581 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Wilderness_Area1, dtype: float64
Feature: Wilderness_Area2 Original: mean=0.000, std=0.000 Synthetic: mean=0.013, std=0.113 KS test: statistic=0.014, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.013165 std 0.112982 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Wilderness_Area2, dtype: float64
Feature: Wilderness_Area3 Original: mean=0.000, std=0.000 Synthetic: mean=0.027, std=0.163 KS test: statistic=0.027, p-value=0.687 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.027184 std 0.162700 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Wilderness_Area3, dtype: float64
Feature: Wilderness_Area4 Original: mean=1.000, std=0.000 Synthetic: mean=0.525, std=0.499 KS test: statistic=0.477, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.524961 std 0.498779 min 0.000000 25% 0.000000 50% 1.000000 75% 1.000000 max 1.000000 Name: Wilderness_Area4, dtype: float64
Feature: Soil_Type1 Original: mean=0.066, std=0.248 Synthetic: mean=0.037, std=0.187 KS test: statistic=0.033, p-value=0.459 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.036816 std 0.186635 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type1, dtype: float64
Feature: Soil_Type2 Original: mean=0.045, std=0.207 Synthetic: mean=0.018, std=0.130 KS test: statistic=0.028, p-value=0.644 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.017573 std 0.129705 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type2, dtype: float64
Feature: Soil_Type3 Original: mean=0.367, std=0.482 Synthetic: mean=0.114, std=0.316 KS test: statistic=0.257, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.114408 std 0.315871 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type3, dtype: float64
Feature: Soil_Type4 Original: mean=0.062, std=0.241 Synthetic: mean=0.038, std=0.191 KS test: statistic=0.025, p-value=0.771 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.038427 std 0.191483 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type4, dtype: float64
Feature: Soil_Type5 Original: mean=0.019, std=0.136 Synthetic: mean=0.015, std=0.116 KS test: statistic=0.006, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.014825 std 0.115999 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type5, dtype: float64
Feature: Soil_Type6 Original: mean=0.114, std=0.318 Synthetic: mean=0.023, std=0.147 KS test: statistic=0.093, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.022612 std 0.147351 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type6, dtype: float64
Feature: Soil_Type7 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.038 KS test: statistic=0.003, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.001913 std 0.037798 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.950000 Name: Soil_Type7, dtype: float64
Feature: Soil_Type8 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.037 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.001621 std 0.037489 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type8, dtype: float64
Feature: Soil_Type9 Original: mean=0.000, std=0.000 Synthetic: mean=0.012, std=0.106 KS test: statistic=0.014, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.011699 std 0.106010 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type9, dtype: float64
Feature: Soil_Type10 Original: mean=0.080, std=0.272 Synthetic: mean=0.006, std=0.076 KS test: statistic=0.074, p-value=0.001 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.005825 std 0.076138 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type10, dtype: float64
Feature: Soil_Type11 Original: mean=0.013, std=0.112 Synthetic: mean=0.019, std=0.137 KS test: statistic=0.007, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.019291 std 0.137214 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type11, dtype: float64
Feature: Soil_Type12 Original: mean=0.000, std=0.000 Synthetic: mean=0.040, std=0.194 KS test: statistic=0.042, p-value=0.181 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.039874 std 0.194399 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type12, dtype: float64
Feature: Soil_Type13 Original: mean=0.000, std=0.000 Synthetic: mean=0.007, std=0.082 KS test: statistic=0.007, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.006796 std 0.082198 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type13, dtype: float64
Feature: Soil_Type14 Original: mean=0.059, std=0.236 Synthetic: mean=0.002, std=0.044 KS test: statistic=0.057, p-value=0.022 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.001942 std 0.044044 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type14, dtype: float64
Feature: Soil_Type15 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.000 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.0 mean 0.0 std 0.0 min 0.0 25% 0.0 50% 0.0 75% 0.0 max 0.0 Name: Soil_Type15, dtype: float64
Feature: Soil_Type16 Original: mean=0.019, std=0.136 Synthetic: mean=0.015, std=0.119 KS test: statistic=0.005, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.015039 std 0.119479 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type16, dtype: float64
Feature: Soil_Type17 Original: mean=0.156, std=0.363 Synthetic: mean=0.041, std=0.197 KS test: statistic=0.117, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.040835 std 0.196956 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type17, dtype: float64
Feature: Soil_Type18 Original: mean=0.000, std=0.000 Synthetic: mean=0.004, std=0.062 KS test: statistic=0.006, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.004476 std 0.062211 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type18, dtype: float64
Feature: Soil_Type19 Original: mean=0.000, std=0.000 Synthetic: mean=0.034, std=0.181 KS test: statistic=0.035, p-value=0.368 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.034272 std 0.181381 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type19, dtype: float64
Feature: Soil_Type20 Original: mean=0.000, std=0.000 Synthetic: mean=0.016, std=0.125 KS test: statistic=0.017, p-value=0.992 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.016019 std 0.124640 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type20, dtype: float64
Feature: Soil_Type21 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.038 KS test: statistic=0.004, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.002087 std 0.038124 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type21, dtype: float64
Feature: Soil_Type22 Original: mean=0.000, std=0.000 Synthetic: mean=0.031, std=0.174 KS test: statistic=0.031, p-value=0.518 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.031068 std 0.173586 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type22, dtype: float64
Feature: Soil_Type23 Original: mean=0.000, std=0.000 Synthetic: mean=0.023, std=0.151 KS test: statistic=0.023, p-value=0.847 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.023301 std 0.150931 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type23, dtype: float64
Feature: Soil_Type24 Original: mean=0.000, std=0.000 Synthetic: mean=0.020, std=0.140 KS test: statistic=0.020, p-value=0.936 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.020078 std 0.139579 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type24, dtype: float64
Feature: Soil_Type25 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.009 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.000282 std 0.009036 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.290000 Name: Soil_Type25, dtype: float64
Feature: Soil_Type26 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.000 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.0 mean 0.0 std 0.0 min 0.0 25% 0.0 50% 0.0 75% 0.0 max 0.0 Name: Soil_Type26, dtype: float64
Feature: Soil_Type27 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.000 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.0 mean 0.0 std 0.0 min 0.0 25% 0.0 50% 0.0 75% 0.0 max 0.0 Name: Soil_Type27, dtype: float64
Feature: Soil_Type28 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.031 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.000971 std 0.031159 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type28, dtype: float64
Feature: Soil_Type29 Original: mean=0.000, std=0.000 Synthetic: mean=0.086, std=0.281 KS test: statistic=0.086, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.086408 std 0.281102 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type29, dtype: float64
Feature: Soil_Type30 Original: mean=0.000, std=0.000 Synthetic: mean=0.041, std=0.198 KS test: statistic=0.042, p-value=0.181 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.040874 std 0.197873 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type30, dtype: float64
Feature: Soil_Type31 Original: mean=0.000, std=0.000 Synthetic: mean=0.036, std=0.185 KS test: statistic=0.037, p-value=0.305 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.035845 std 0.184695 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type31, dtype: float64
Feature: Soil_Type32 Original: mean=0.000, std=0.000 Synthetic: mean=0.067, std=0.250 KS test: statistic=0.067, p-value=0.004 -> Significant difference detected! Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.066990 std 0.250127 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type32, dtype: float64
Feature: Soil_Type33 Original: mean=0.000, std=0.000 Synthetic: mean=0.039, std=0.193 KS test: statistic=0.040, p-value=0.225 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.039117 std 0.193450 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type33, dtype: float64
Feature: Soil_Type34 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.036 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.001505 std 0.035546 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type34, dtype: float64
Feature: Soil_Type35 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.044 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.001942 std 0.044044 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type35, dtype: float64
Feature: Soil_Type36 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.007 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.000233 std 0.007478 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.240000 Name: Soil_Type36, dtype: float64
Feature: Soil_Type37 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.024 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.000000 mean 0.000757 std 0.024304 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.780000 Name: Soil_Type37, dtype: float64
Feature: Soil_Type38 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.000 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.0 mean 0.0 std 0.0 min 0.0 25% 0.0 50% 0.0 75% 0.0 max 0.0 Name: Soil_Type38, dtype: float64
Feature: Soil_Type39 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.000 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.0 mean 0.0 std 0.0 min 0.0 25% 0.0 50% 0.0 75% 0.0 max 0.0 Name: Soil_Type39, dtype: float64
Feature: Soil_Type40 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.000 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (1030, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 1030.0 mean 0.0 std 0.0 min 0.0 25% 0.0 50% 0.0 75% 0.0 max 0.0 Name: Soil_Type40, dtype: float64
### Categorical Features Validation ### Feature: Cover_Type Original counts: Cover_Type 4 2060 Name: count, dtype: int64 Synthetic counts: Cover_Type 4 1030 Name: count, dtype: int64 Chi-squared test: statistic=0.000, p-value=1.000 -> No significant difference in categorical distribution
### Coverage Metric ### Coverage: 0.00% of original samples have a synthetic neighbor within 0.5 ### Diversity Metric ### Average pairwise distance among synthetic samples: 1412.639 Standard deviation of pairwise distances: 834.938 ### Density Metric ### Average local density: 0.000 neighbors within a radius of 0.5 ### Discriminative Score ### Discriminative score (classifier accuracy): 0.950 ### MMD Metric ### Maximum Mean Discrepancy (MMD): 0.001 ### Validation for class: 5 ### ### Continuous Features Validation ### Feature: Elevation Original: mean=2793.034, std=89.394 Synthetic: mean=2965.944, std=113.905 KS test: statistic=0.698, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 2965.944007 std 113.905480 min 1979.440000 25% 2922.030000 50% 2983.000000 75% 3030.722500 max 3336.900000 Name: Elevation, dtype: float64
Feature: Aspect Original: mean=141.199, std=92.274 Synthetic: mean=122.287, std=103.146 KS test: statistic=0.207, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 122.287065 std 103.146078 min 0.000000 25% 39.000000 50% 90.000000 75% 187.772500 max 359.840000 Name: Aspect, dtype: float64
Feature: Slope Original: mean=16.794, std=8.052 Synthetic: mean=13.449, std=6.613 KS test: statistic=0.234, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 13.448681 std 6.612809 min 0.000000 25% 9.000000 50% 13.000000 75% 17.000000 max 37.000000 Name: Slope, dtype: float64
Feature: Horizontal_Distance_To_Hydrology Original: mean=209.276, std=171.615 Synthetic: mean=217.462, std=167.377 KS test: statistic=0.066, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 217.462465 std 167.376878 min 0.000000 25% 85.000000 50% 190.000000 75% 308.100000 max 1260.830000 Name: Horizontal_Distance_To_Hydrology, dtype: float64
Feature: Vertical_Distance_To_Hydrology Original: mean=50.432, std=57.814 Synthetic: mean=29.069, std=44.324 KS test: statistic=0.191, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 29.069489 std 44.324080 min -135.950000 25% 1.000000 50% 17.320000 75% 47.000000 max 252.630000 Name: Vertical_Distance_To_Hydrology, dtype: float64
Feature: Horizontal_Distance_To_Roadways Original: mean=1338.482, std=1016.511 Synthetic: mean=1917.998, std=1205.615 KS test: statistic=0.217, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 1917.998452 std 1205.615344 min 13.720000 25% 1020.000000 50% 1661.270000 75% 2608.040000 max 6612.270000 Name: Horizontal_Distance_To_Roadways, dtype: float64
Feature: Hillshade_9am Original: mean=223.398, std=22.901 Synthetic: mean=223.966, std=18.259 KS test: statistic=0.103, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 223.966272 std 18.258650 min 123.670000 25% 214.000000 50% 227.000000 75% 237.000000 max 254.000000 Name: Hillshade_9am, dtype: float64
Feature: Hillshade_Noon Original: mean=219.019, std=24.695 Synthetic: mean=222.570, std=19.923 KS test: statistic=0.093, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 222.569562 std 19.923300 min 105.800000 25% 212.000000 50% 225.000000 75% 236.000000 max 254.000000 Name: Hillshade_Noon, dtype: float64
Feature: Hillshade_3pm Original: mean=121.848, std=49.567 Synthetic: mean=124.726, std=37.812 KS test: statistic=0.110, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 124.725790 std 37.812444 min 0.000000 25% 103.000000 50% 127.000000 75% 149.000000 max 234.980000 Name: Hillshade_3pm, dtype: float64
Feature: Horizontal_Distance_To_Fire_Points Original: mean=1440.032, std=644.540 Synthetic: mean=2014.503, std=1277.630 KS test: statistic=0.243, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 2014.503308 std 1277.629502 min 16.340000 25% 1091.160000 50% 1772.885000 75% 2566.285000 max 7000.480000 Name: Horizontal_Distance_To_Fire_Points, dtype: float64
Feature: Wilderness_Area1 Original: mean=0.375, std=0.484 Synthetic: mean=0.654, std=0.476 KS test: statistic=0.279, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.653790 std 0.475754 min 0.000000 25% 0.000000 50% 1.000000 75% 1.000000 max 1.000000 Name: Wilderness_Area1, dtype: float64
Feature: Wilderness_Area2 Original: mean=0.000, std=0.000 Synthetic: mean=0.015, std=0.121 KS test: statistic=0.015, p-value=0.663 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.014938 std 0.120732 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Wilderness_Area2, dtype: float64
Feature: Wilderness_Area3 Original: mean=0.625, std=0.484 Synthetic: mean=0.502, std=0.500 KS test: statistic=0.123, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.502394 std 0.499831 min 0.000000 25% 0.000000 50% 1.000000 75% 1.000000 max 1.000000 Name: Wilderness_Area3, dtype: float64
Feature: Wilderness_Area4 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.017 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.000294 std 0.017140 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Wilderness_Area4, dtype: float64
Feature: Soil_Type1 Original: mean=0.000, std=0.000 Synthetic: mean=0.003, std=0.051 KS test: statistic=0.003, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.002644 std 0.051359 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type1, dtype: float64
Feature: Soil_Type2 Original: mean=0.030, std=0.169 Synthetic: mean=0.008, std=0.087 KS test: statistic=0.022, p-value=0.226 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.007670 std 0.087092 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type2, dtype: float64
Feature: Soil_Type3 Original: mean=0.000, std=0.000 Synthetic: mean=0.004, std=0.062 KS test: statistic=0.004, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.003934 std 0.061887 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type3, dtype: float64
Feature: Soil_Type4 Original: mean=0.065, std=0.246 Synthetic: mean=0.036, std=0.186 KS test: statistic=0.030, p-value=0.038 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.035796 std 0.185704 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type4, dtype: float64
Feature: Soil_Type5 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.004 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.000082 std 0.003908 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.220000 Name: Soil_Type5, dtype: float64
Feature: Soil_Type6 Original: mean=0.000, std=0.000 Synthetic: mean=0.006, std=0.079 KS test: statistic=0.007, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.006407 std 0.078919 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type6, dtype: float64
Feature: Soil_Type7 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.014 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.000247 std 0.014397 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.840000 Name: Soil_Type7, dtype: float64
Feature: Soil_Type8 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.015 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.000370 std 0.015265 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.730000 Name: Soil_Type8, dtype: float64
Feature: Soil_Type9 Original: mean=0.000, std=0.000 Synthetic: mean=0.004, std=0.062 KS test: statistic=0.005, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.004230 std 0.061908 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type9, dtype: float64
Feature: Soil_Type10 Original: mean=0.029, std=0.168 Synthetic: mean=0.002, std=0.042 KS test: statistic=0.027, p-value=0.065 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.001763 std 0.041953 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type10, dtype: float64
Feature: Soil_Type11 Original: mean=0.073, std=0.261 Synthetic: mean=0.031, std=0.173 KS test: statistic=0.043, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.031178 std 0.173346 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type11, dtype: float64
Feature: Soil_Type12 Original: mean=0.000, std=0.000 Synthetic: mean=0.066, std=0.248 KS test: statistic=0.066, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.066014 std 0.247910 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type12, dtype: float64
Feature: Soil_Type13 Original: mean=0.143, std=0.350 Synthetic: mean=0.088, std=0.283 KS test: statistic=0.055, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.088437 std 0.283293 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type13, dtype: float64
Feature: Soil_Type14 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.034 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.001381 std 0.033655 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type14, dtype: float64
Feature: Soil_Type15 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.015 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.000267 std 0.015258 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.890000 Name: Soil_Type15, dtype: float64
Feature: Soil_Type16 Original: mean=0.002, std=0.042 Synthetic: mean=0.003, std=0.058 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.003449 std 0.057585 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type16, dtype: float64
Feature: Soil_Type17 Original: mean=0.065, std=0.246 Synthetic: mean=0.004, std=0.066 KS test: statistic=0.061, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.004424 std 0.065669 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type17, dtype: float64
Feature: Soil_Type18 Original: mean=0.003, std=0.051 Synthetic: mean=0.005, std=0.070 KS test: statistic=0.003, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.005179 std 0.069701 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type18, dtype: float64
Feature: Soil_Type19 Original: mean=0.006, std=0.080 Synthetic: mean=0.005, std=0.071 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.005167 std 0.071212 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type19, dtype: float64
Feature: Soil_Type20 Original: mean=0.006, std=0.079 Synthetic: mean=0.016, std=0.125 KS test: statistic=0.010, p-value=0.973 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.015943 std 0.124541 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type20, dtype: float64
Feature: Soil_Type21 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.031 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.001061 std 0.031132 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type21, dtype: float64
Feature: Soil_Type22 Original: mean=0.000, std=0.000 Synthetic: mean=0.048, std=0.214 KS test: statistic=0.049, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.048443 std 0.214296 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type22, dtype: float64
Feature: Soil_Type23 Original: mean=0.079, std=0.270 Synthetic: mean=0.145, std=0.352 KS test: statistic=0.067, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.145082 std 0.351946 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type23, dtype: float64
Feature: Soil_Type24 Original: mean=0.007, std=0.084 Synthetic: mean=0.034, std=0.180 KS test: statistic=0.028, p-value=0.062 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.033922 std 0.180494 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type24, dtype: float64
Feature: Soil_Type25 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.023 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.000679 std 0.022749 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.890000 Name: Soil_Type25, dtype: float64
Feature: Soil_Type26 Original: mean=0.016, std=0.124 Synthetic: mean=0.004, std=0.060 KS test: statistic=0.012, p-value=0.879 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.003784 std 0.060031 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type26, dtype: float64
Feature: Soil_Type27 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.029 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.000958 std 0.028761 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type27, dtype: float64
Feature: Soil_Type28 Original: mean=0.001, std=0.036 Synthetic: mean=0.001, std=0.025 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.00000 mean 0.00074 std 0.02518 min 0.00000 25% 0.00000 50% 0.00000 75% 0.00000 max 1.00000 Name: Soil_Type28, dtype: float64
Feature: Soil_Type29 Original: mean=0.110, std=0.313 Synthetic: mean=0.258, std=0.437 KS test: statistic=0.149, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.258296 std 0.437439 min 0.000000 25% 0.000000 50% 0.000000 75% 1.000000 max 1.000000 Name: Soil_Type29, dtype: float64
Feature: Soil_Type30 Original: mean=0.224, std=0.417 Synthetic: mean=0.143, std=0.350 KS test: statistic=0.082, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.143431 std 0.350142 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type30, dtype: float64
Feature: Soil_Type31 Original: mean=0.035, std=0.184 Synthetic: mean=0.047, std=0.211 KS test: statistic=0.012, p-value=0.896 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.046701 std 0.210761 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type31, dtype: float64
Feature: Soil_Type32 Original: mean=0.050, std=0.217 Synthetic: mean=0.076, std=0.265 KS test: statistic=0.027, p-value=0.078 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.076322 std 0.265453 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type32, dtype: float64
Feature: Soil_Type33 Original: mean=0.056, std=0.230 Synthetic: mean=0.090, std=0.287 KS test: statistic=0.035, p-value=0.008 -> Significant difference detected! Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.090452 std 0.286748 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type33, dtype: float64
Feature: Soil_Type34 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.035 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.001316 std 0.034831 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type34, dtype: float64
Feature: Soil_Type35 Original: mean=0.000, std=0.000 Synthetic: mean=0.003, std=0.053 KS test: statistic=0.004, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.003005 std 0.053173 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type35, dtype: float64
Feature: Soil_Type36 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.024 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.000864 std 0.024387 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.950000 Name: Soil_Type36, dtype: float64
Feature: Soil_Type37 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.007 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.000123 std 0.006864 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.400000 Name: Soil_Type37, dtype: float64
Feature: Soil_Type38 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.034 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.001175 std 0.034264 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type38, dtype: float64
Feature: Soil_Type39 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.024 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.000588 std 0.024236 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type39, dtype: float64
Feature: Soil_Type40 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.030 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (3404, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 3404.000000 mean 0.000881 std 0.029678 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type40, dtype: float64
### Categorical Features Validation ### Feature: Cover_Type Original counts: Cover_Type 5 6808 Name: count, dtype: int64 Synthetic counts: Cover_Type 5 3404 Name: count, dtype: int64 Chi-squared test: statistic=0.000, p-value=1.000 -> No significant difference in categorical distribution
### Coverage Metric ### Coverage: 0.00% of original samples have a synthetic neighbor within 0.5 ### Diversity Metric ### Average pairwise distance among synthetic samples: 2169.976 Standard deviation of pairwise distances: 1254.788 ### Density Metric ### Average local density: 0.000 neighbors within a radius of 0.5 ### Discriminative Score ### Discriminative score (classifier accuracy): 0.844 ### MMD Metric ### Maximum Mean Discrepancy (MMD): 0.000 ### Validation for class: 6 ### ### Continuous Features Validation ### Feature: Elevation Original: mean=2418.807, std=188.404 Synthetic: mean=2739.624, std=223.717 KS test: statistic=0.619, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 2739.624093 std 223.716760 min 1864.120000 25% 2625.690000 50% 2790.920000 75% 2909.230000 max 3206.790000 Name: Elevation, dtype: float64
Feature: Aspect Original: mean=180.823, std=133.865 Synthetic: mean=189.044, std=113.115 KS test: statistic=0.166, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 189.044476 std 113.114935 min 0.000000 25% 86.090000 50% 179.530000 75% 305.200000 max 359.950000 Name: Aspect, dtype: float64
Feature: Slope Original: mean=19.026, std=7.917 Synthetic: mean=17.133, std=7.451 KS test: statistic=0.147, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 17.132766 std 7.451402 min 1.000000 25% 12.000000 50% 16.000000 75% 22.000000 max 49.460000 Name: Slope, dtype: float64
Feature: Horizontal_Distance_To_Hydrology Original: mean=158.618, std=123.966 Synthetic: mean=190.371, std=152.933 KS test: statistic=0.099, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 190.370848 std 152.933106 min 0.000000 25% 67.000000 50% 153.000000 75% 272.000000 max 1034.540000 Name: Horizontal_Distance_To_Hydrology, dtype: float64
Feature: Vertical_Distance_To_Hydrology Original: mean=44.921, std=46.373 Synthetic: mean=44.005, std=49.462 KS test: statistic=0.038, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 44.004761 std 49.462488 min -117.460000 25% 8.000000 50% 30.000000 75% 67.000000 max 383.000000 Name: Vertical_Distance_To_Hydrology, dtype: float64
Feature: Horizontal_Distance_To_Roadways Original: mean=1033.641, std=570.311 Synthetic: mean=1553.178, std=1060.268 KS test: statistic=0.227, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 1553.177557 std 1060.268349 min 2.290000 25% 768.930000 50% 1315.170000 75% 2091.740000 max 6431.660000 Name: Horizontal_Distance_To_Roadways, dtype: float64
Feature: Hillshade_9am Original: mean=192.932, std=33.425 Synthetic: mean=196.415, std=28.491 KS test: statistic=0.108, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 196.414545 std 28.490848 min 49.100000 25% 180.000000 50% 200.000000 75% 218.000000 max 254.000000 Name: Hillshade_9am, dtype: float64
Feature: Hillshade_Noon Original: mean=209.804, std=24.278 Synthetic: mean=217.619, std=20.515 KS test: statistic=0.151, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 217.619365 std 20.514909 min 100.900000 25% 206.000000 50% 220.000000 75% 232.000000 max 254.000000 Name: Hillshade_Noon, dtype: float64
Feature: Hillshade_3pm Original: mean=148.202, std=45.370 Synthetic: mean=154.924, std=34.725 KS test: statistic=0.131, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 154.924455 std 34.725021 min 0.000000 25% 132.000000 50% 154.000000 75% 179.000000 max 251.000000 Name: Hillshade_3pm, dtype: float64
Feature: Horizontal_Distance_To_Fire_Points Original: mean=1058.292, std=579.888 Synthetic: mean=1533.564, std=993.259 KS test: statistic=0.255, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 1533.564327 std 993.259036 min 3.270000 25% 808.000000 50% 1357.300000 75% 2040.570000 max 6582.090000 Name: Horizontal_Distance_To_Fire_Points, dtype: float64
Feature: Wilderness_Area1 Original: mean=0.000, std=0.000 Synthetic: mean=0.215, std=0.410 KS test: statistic=0.215, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.214729 std 0.410434 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Wilderness_Area1, dtype: float64
Feature: Wilderness_Area2 Original: mean=0.000, std=0.000 Synthetic: mean=0.021, std=0.143 KS test: statistic=0.021, p-value=0.042 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.021031 std 0.143375 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Wilderness_Area2, dtype: float64
Feature: Wilderness_Area3 Original: mean=0.441, std=0.496 Synthetic: mean=0.350, std=0.477 KS test: statistic=0.091, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.349932 std 0.476798 min 0.000000 25% 0.000000 50% 0.000000 75% 1.000000 max 1.000000 Name: Wilderness_Area3, dtype: float64
Feature: Wilderness_Area4 Original: mean=0.559, std=0.496 Synthetic: mean=0.099, std=0.298 KS test: statistic=0.462, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.098942 std 0.298039 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Wilderness_Area4, dtype: float64
Feature: Soil_Type1 Original: mean=0.044, std=0.205 Synthetic: mean=0.007, std=0.082 KS test: statistic=0.038, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.007054 std 0.081681 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type1, dtype: float64
Feature: Soil_Type2 Original: mean=0.074, std=0.262 Synthetic: mean=0.026, std=0.157 KS test: statistic=0.049, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.025721 std 0.157280 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type2, dtype: float64
Feature: Soil_Type3 Original: mean=0.012, std=0.111 Synthetic: mean=0.003, std=0.054 KS test: statistic=0.010, p-value=0.814 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.003000 std 0.054216 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type3, dtype: float64
Feature: Soil_Type4 Original: mean=0.036, std=0.187 Synthetic: mean=0.025, std=0.157 KS test: statistic=0.011, p-value=0.624 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.025296 std 0.156589 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type4, dtype: float64
Feature: Soil_Type5 Original: mean=0.033, std=0.179 Synthetic: mean=0.004, std=0.060 KS test: statistic=0.030, p-value=0.001 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.003844 std 0.060414 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type5, dtype: float64
Feature: Soil_Type6 Original: mean=0.076, std=0.266 Synthetic: mean=0.016, std=0.124 KS test: statistic=0.061, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.015713 std 0.123504 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type6, dtype: float64
Feature: Soil_Type7 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.023 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.000792 std 0.023151 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type7, dtype: float64
Feature: Soil_Type8 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.022 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.000661 std 0.021751 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.950000 Name: Soil_Type8, dtype: float64
Feature: Soil_Type9 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.048 KS test: statistic=0.003, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.002430 std 0.048158 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type9, dtype: float64
Feature: Soil_Type10 Original: mean=0.512, std=0.500 Synthetic: mean=0.158, std=0.364 KS test: statistic=0.356, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.157519 std 0.363670 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type10, dtype: float64
Feature: Soil_Type11 Original: mean=0.030, std=0.171 Synthetic: mean=0.030, std=0.170 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.029908 std 0.169660 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type11, dtype: float64
Feature: Soil_Type12 Original: mean=0.000, std=0.000 Synthetic: mean=0.058, std=0.234 KS test: statistic=0.058, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.058080 std 0.233594 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type12, dtype: float64
Feature: Soil_Type13 Original: mean=0.035, std=0.183 Synthetic: mean=0.019, std=0.134 KS test: statistic=0.017, p-value=0.173 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.018573 std 0.134455 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type13, dtype: float64
Feature: Soil_Type14 Original: mean=0.020, std=0.138 Synthetic: mean=0.002, std=0.044 KS test: statistic=0.018, p-value=0.131 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.002046 std 0.044053 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type14, dtype: float64
Feature: Soil_Type15 Original: mean=0.000, std=0.015 Synthetic: mean=0.001, std=0.023 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.000846 std 0.023435 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type15, dtype: float64
Feature: Soil_Type16 Original: mean=0.015, std=0.122 Synthetic: mean=0.006, std=0.079 KS test: statistic=0.009, p-value=0.844 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.006488 std 0.078824 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type16, dtype: float64
Feature: Soil_Type17 Original: mean=0.041, std=0.198 Synthetic: mean=0.007, std=0.079 KS test: statistic=0.035, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.006673 std 0.079209 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type17, dtype: float64
Feature: Soil_Type18 Original: mean=0.000, std=0.000 Synthetic: mean=0.005, std=0.068 KS test: statistic=0.005, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.004727 std 0.068065 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type18, dtype: float64
Feature: Soil_Type19 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.048 KS test: statistic=0.003, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.002418 std 0.048371 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type19, dtype: float64
Feature: Soil_Type20 Original: mean=0.016, std=0.126 Synthetic: mean=0.025, std=0.156 KS test: statistic=0.010, p-value=0.783 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.025161 std 0.155818 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type20, dtype: float64
Feature: Soil_Type21 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.043 KS test: statistic=0.003, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.002046 std 0.043267 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type21, dtype: float64
Feature: Soil_Type22 Original: mean=0.000, std=0.000 Synthetic: mean=0.059, std=0.235 KS test: statistic=0.059, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.058983 std 0.235366 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type22, dtype: float64
Feature: Soil_Type23 Original: mean=0.002, std=0.040 Synthetic: mean=0.076, std=0.264 KS test: statistic=0.075, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.075911 std 0.264481 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type23, dtype: float64
Feature: Soil_Type24 Original: mean=0.008, std=0.089 Synthetic: mean=0.031, std=0.172 KS test: statistic=0.023, p-value=0.018 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.030809 std 0.172471 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type24, dtype: float64
Feature: Soil_Type25 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.018 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.000557 std 0.018492 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.780000 Name: Soil_Type25, dtype: float64
Feature: Soil_Type26 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.047 KS test: statistic=0.003, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.002323 std 0.047168 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type26, dtype: float64
Feature: Soil_Type27 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.042 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.001844 std 0.041535 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type27, dtype: float64
Feature: Soil_Type28 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.038 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.001541 std 0.037697 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type28, dtype: float64
Feature: Soil_Type29 Original: mean=0.000, std=0.000 Synthetic: mean=0.182, std=0.386 KS test: statistic=0.183, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.182360 std 0.385972 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type29, dtype: float64
Feature: Soil_Type30 Original: mean=0.000, std=0.000 Synthetic: mean=0.030, std=0.171 KS test: statistic=0.031, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.030340 std 0.170979 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type30, dtype: float64
Feature: Soil_Type31 Original: mean=0.003, std=0.057 Synthetic: mean=0.042, std=0.201 KS test: statistic=0.039, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.042086 std 0.200640 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type31, dtype: float64
Feature: Soil_Type32 Original: mean=0.012, std=0.107 Synthetic: mean=0.090, std=0.286 KS test: statistic=0.079, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.089780 std 0.285511 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type32, dtype: float64
Feature: Soil_Type33 Original: mean=0.030, std=0.170 Synthetic: mean=0.059, std=0.236 KS test: statistic=0.030, p-value=0.001 -> Significant difference detected! Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.059231 std 0.235971 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type33, dtype: float64
Feature: Soil_Type34 Original: mean=0.001, std=0.026 Synthetic: mean=0.003, std=0.053 KS test: statistic=0.003, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.002935 std 0.053131 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type34, dtype: float64
Feature: Soil_Type35 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.047 KS test: statistic=0.003, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.002369 std 0.047255 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type35, dtype: float64
Feature: Soil_Type36 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.022 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.000721 std 0.022242 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type36, dtype: float64
Feature: Soil_Type37 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.022 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.000709 std 0.021770 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.950000 Name: Soil_Type37, dtype: float64
Feature: Soil_Type38 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.039 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.001538 std 0.039193 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type38, dtype: float64
Feature: Soil_Type39 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.012 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.000154 std 0.012403 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type39, dtype: float64
Feature: Soil_Type40 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.018 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (6501, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 6501.000000 mean 0.000308 std 0.017538 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type40, dtype: float64
### Categorical Features Validation ### Feature: Cover_Type Original counts: Cover_Type 6 13003 Name: count, dtype: int64 Synthetic counts: Cover_Type 6 6501 Name: count, dtype: int64 Chi-squared test: statistic=0.000, p-value=1.000 -> No significant difference in categorical distribution
### Coverage Metric ### Coverage: 0.00% of original samples have a synthetic neighbor within 0.5 ### Diversity Metric ### Average pairwise distance among synthetic samples: 1816.268 Standard deviation of pairwise distances: 1051.183 ### Density Metric ### Average local density: 0.000 neighbors within a radius of 0.5 ### Discriminative Score ### Discriminative score (classifier accuracy): 0.910 ### MMD Metric ### Maximum Mean Discrepancy (MMD): 0.000 ### Validation for class: 7 ### ### Continuous Features Validation ### Feature: Elevation Original: mean=3354.802, std=83.471 Synthetic: mean=3200.241, std=109.487 KS test: statistic=0.587, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 3200.240920 std 109.486672 min 2844.570000 25% 3119.685000 50% 3194.525000 75% 3268.857500 max 3692.000000 Name: Elevation, dtype: float64
Feature: Aspect Original: mean=151.577, std=109.190 Synthetic: mean=146.506, std=109.409 KS test: statistic=0.061, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 146.506088 std 109.408588 min 0.000000 25% 53.797500 50% 117.000000 75% 239.000000 max 360.000000 Name: Aspect, dtype: float64
Feature: Slope Original: mean=13.981, std=7.019 Synthetic: mean=10.867, std=6.036 KS test: statistic=0.235, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 10.866576 std 6.036425 min 0.000000 25% 6.000000 50% 10.000000 75% 14.000000 max 46.730000 Name: Slope, dtype: float64
Feature: Horizontal_Distance_To_Hydrology Original: mean=339.285, std=279.110 Synthetic: mean=369.942, std=217.922 KS test: statistic=0.166, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 369.942289 std 217.921634 min 0.000000 25% 210.000000 50% 339.000000 75% 509.067500 max 1321.000000 Name: Horizontal_Distance_To_Hydrology, dtype: float64
Feature: Vertical_Distance_To_Hydrology Original: mean=62.591, std=70.544 Synthetic: mean=51.534, std=55.371 KS test: statistic=0.080, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 51.534263 std 55.370670 min -125.680000 25% 10.000000 50% 36.000000 75% 78.952500 max 375.760000 Name: Vertical_Distance_To_Hydrology, dtype: float64
Feature: Horizontal_Distance_To_Roadways Original: mean=2701.735, std=1160.657 Synthetic: mean=3434.672, std=1515.750 KS test: statistic=0.226, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 3434.672281 std 1515.750009 min 96.800000 25% 2225.357500 50% 3331.655000 75% 4636.890000 max 7117.000000 Name: Horizontal_Distance_To_Roadways, dtype: float64
Feature: Hillshade_9am Original: mean=217.561, std=23.051 Synthetic: mean=220.006, std=19.951 KS test: statistic=0.074, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 220.006135 std 19.950761 min 106.980000 25% 209.000000 50% 223.000000 75% 234.000000 max 254.000000 Name: Hillshade_9am, dtype: float64
Feature: Hillshade_Noon Original: mean=222.442, std=18.401 Synthetic: mean=229.712, std=15.786 KS test: statistic=0.174, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 229.711789 std 15.786369 min 130.310000 25% 220.970000 50% 231.000000 75% 242.000000 max 254.000000 Name: Hillshade_Noon, dtype: float64
Feature: Hillshade_3pm Original: mean=135.141, std=37.867 Synthetic: mean=143.248, std=35.027 KS test: statistic=0.077, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 143.248449 std 35.026611 min 0.000000 25% 121.000000 50% 143.000000 75% 167.000000 max 250.350000 Name: Hillshade_3pm, dtype: float64
Feature: Horizontal_Distance_To_Fire_Points Original: mean=2067.645, std=1088.754 Synthetic: mean=2464.203, std=1460.786 KS test: statistic=0.124, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.00000 mean 2464.20327 std 1460.78609 min 26.14000 25% 1411.87250 50% 2198.19000 75% 3067.90750 max 7173.00000 Name: Horizontal_Distance_To_Fire_Points, dtype: float64
Feature: Wilderness_Area1 Original: mean=0.260, std=0.438 Synthetic: mean=0.606, std=0.488 KS test: statistic=0.348, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.606493 std 0.488343 min 0.000000 25% 0.000000 50% 1.000000 75% 1.000000 max 1.000000 Name: Wilderness_Area1, dtype: float64
Feature: Wilderness_Area2 Original: mean=0.114, std=0.317 Synthetic: mean=0.103, std=0.304 KS test: statistic=0.011, p-value=0.538 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.103030 std 0.303553 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Wilderness_Area2, dtype: float64
Feature: Wilderness_Area3 Original: mean=0.627, std=0.484 Synthetic: mean=0.525, std=0.499 KS test: statistic=0.102, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.525354 std 0.499242 min 0.000000 25% 0.000000 50% 1.000000 75% 1.000000 max 1.000000 Name: Wilderness_Area3, dtype: float64
Feature: Wilderness_Area4 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.000 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.0 mean 0.0 std 0.0 min 0.0 25% 0.0 50% 0.0 75% 0.0 max 0.0 Name: Wilderness_Area4, dtype: float64
Feature: Soil_Type1 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.034 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.001177 std 0.033887 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type1, dtype: float64
Feature: Soil_Type2 Original: mean=0.000, std=0.000 Synthetic: mean=0.005, std=0.070 KS test: statistic=0.005, p-value=0.999 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.004989 std 0.070109 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type2, dtype: float64
Feature: Soil_Type3 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.026 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.000789 std 0.026283 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type3, dtype: float64
Feature: Soil_Type4 Original: mean=0.000, std=0.000 Synthetic: mean=0.009, std=0.095 KS test: statistic=0.010, p-value=0.704 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.009370 std 0.095166 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type4, dtype: float64
Feature: Soil_Type5 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.027 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.000792 std 0.027032 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type5, dtype: float64
Feature: Soil_Type6 Original: mean=0.000, std=0.000 Synthetic: mean=0.009, std=0.092 KS test: statistic=0.009, p-value=0.811 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.008696 std 0.092303 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type6, dtype: float64
Feature: Soil_Type7 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.011 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.000233 std 0.011449 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.730000 Name: Soil_Type7, dtype: float64
Feature: Soil_Type8 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.013 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.000332 std 0.013337 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.780000 Name: Soil_Type8, dtype: float64
Feature: Soil_Type9 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.022 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.000561 std 0.021545 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type9, dtype: float64
Feature: Soil_Type10 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.016 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.000270 std 0.016428 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type10, dtype: float64
Feature: Soil_Type11 Original: mean=0.000, std=0.000 Synthetic: mean=0.010, std=0.099 KS test: statistic=0.010, p-value=0.656 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.010105 std 0.099442 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type11, dtype: float64
Feature: Soil_Type12 Original: mean=0.000, std=0.000 Synthetic: mean=0.041, std=0.198 KS test: statistic=0.041, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.040870 std 0.197724 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type12, dtype: float64
Feature: Soil_Type13 Original: mean=0.000, std=0.000 Synthetic: mean=0.013, std=0.112 KS test: statistic=0.013, p-value=0.363 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.012831 std 0.112100 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type13, dtype: float64
Feature: Soil_Type14 Original: mean=0.000, std=0.000 Synthetic: mean=0.001, std=0.030 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.001086 std 0.029580 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type14, dtype: float64
Feature: Soil_Type15 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.018 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.000443 std 0.017505 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.950000 Name: Soil_Type15, dtype: float64
Feature: Soil_Type16 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.042 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.001852 std 0.042118 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type16, dtype: float64
Feature: Soil_Type17 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.012 KS test: statistic=0.000, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.000135 std 0.011617 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type17, dtype: float64
Feature: Soil_Type18 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.038 KS test: statistic=0.002, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.001592 std 0.038201 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type18, dtype: float64
Feature: Soil_Type19 Original: mean=0.000, std=0.014 Synthetic: mean=0.009, std=0.095 KS test: statistic=0.010, p-value=0.712 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.009395 std 0.094999 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type19, dtype: float64
Feature: Soil_Type20 Original: mean=0.000, std=0.000 Synthetic: mean=0.009, std=0.096 KS test: statistic=0.010, p-value=0.751 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.009333 std 0.095783 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type20, dtype: float64
Feature: Soil_Type21 Original: mean=0.001, std=0.023 Synthetic: mean=0.001, std=0.033 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.001213 std 0.032829 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type21, dtype: float64
Feature: Soil_Type22 Original: mean=0.007, std=0.085 Synthetic: mean=0.067, std=0.249 KS test: statistic=0.060, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.066723 std 0.249109 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type22, dtype: float64
Feature: Soil_Type23 Original: mean=0.036, std=0.187 Synthetic: mean=0.115, std=0.319 KS test: statistic=0.079, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.115116 std 0.318970 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type23, dtype: float64
Feature: Soil_Type24 Original: mean=0.009, std=0.096 Synthetic: mean=0.045, std=0.207 KS test: statistic=0.036, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.045119 std 0.207130 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type24, dtype: float64
Feature: Soil_Type25 Original: mean=0.000, std=0.000 Synthetic: mean=0.000, std=0.019 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.000468 std 0.018610 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type25, dtype: float64
Feature: Soil_Type26 Original: mean=0.000, std=0.000 Synthetic: mean=0.007, std=0.084 KS test: statistic=0.008, p-value=0.900 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.007443 std 0.084463 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type26, dtype: float64
Feature: Soil_Type27 Original: mean=0.001, std=0.038 Synthetic: mean=0.002, std=0.038 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.001727 std 0.038387 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type27, dtype: float64
Feature: Soil_Type28 Original: mean=0.000, std=0.000 Synthetic: mean=0.002, std=0.041 KS test: statistic=0.003, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.001958 std 0.041162 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type28, dtype: float64
Feature: Soil_Type29 Original: mean=0.041, std=0.199 Synthetic: mean=0.206, std=0.404 KS test: statistic=0.165, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.206287 std 0.404483 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type29, dtype: float64
Feature: Soil_Type30 Original: mean=0.008, std=0.091 Synthetic: mean=0.030, std=0.169 KS test: statistic=0.021, p-value=0.021 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.029505 std 0.168935 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type30, dtype: float64
Feature: Soil_Type31 Original: mean=0.011, std=0.105 Synthetic: mean=0.045, std=0.206 KS test: statistic=0.034, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.044509 std 0.205662 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type31, dtype: float64
Feature: Soil_Type32 Original: mean=0.043, std=0.203 Synthetic: mean=0.101, std=0.301 KS test: statistic=0.059, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.101202 std 0.301285 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type32, dtype: float64
Feature: Soil_Type33 Original: mean=0.032, std=0.177 Synthetic: mean=0.086, std=0.279 KS test: statistic=0.054, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.085738 std 0.279443 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type33, dtype: float64
Feature: Soil_Type34 Original: mean=0.002, std=0.049 Synthetic: mean=0.003, std=0.051 KS test: statistic=0.001, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.002874 std 0.051249 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type34, dtype: float64
Feature: Soil_Type35 Original: mean=0.049, std=0.215 Synthetic: mean=0.005, std=0.069 KS test: statistic=0.044, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.005012 std 0.069052 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type35, dtype: float64
Feature: Soil_Type36 Original: mean=0.003, std=0.056 Synthetic: mean=0.000, std=0.013 KS test: statistic=0.003, p-value=1.000 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.000246 std 0.013425 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 0.840000 Name: Soil_Type36, dtype: float64
Feature: Soil_Type37 Original: mean=0.015, std=0.120 Synthetic: mean=0.001, std=0.019 KS test: statistic=0.015, p-value=0.242 -> No significant difference in distribution Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.000524 std 0.019385 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type37, dtype: float64
Feature: Soil_Type38 Original: mean=0.309, std=0.462 Synthetic: mean=0.066, std=0.248 KS test: statistic=0.244, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.066329 std 0.248044 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type38, dtype: float64
Feature: Soil_Type39 Original: mean=0.273, std=0.445 Synthetic: mean=0.058, std=0.233 KS test: statistic=0.216, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.057900 std 0.232686 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type39, dtype: float64
Feature: Soil_Type40 Original: mean=0.158, std=0.365 Synthetic: mean=0.033, std=0.177 KS test: statistic=0.127, p-value=0.000 -> Significant difference detected! Synthetic shape after dropna: (7410, 56) Any NA in mcg for synthetic? 0 Synthetic mcg describe: count 7410.000000 mean 0.032846 std 0.177085 min 0.000000 25% 0.000000 50% 0.000000 75% 0.000000 max 1.000000 Name: Soil_Type40, dtype: float64
### Categorical Features Validation ### Feature: Cover_Type Original counts: Cover_Type 7 14820 Name: count, dtype: int64 Synthetic counts: Cover_Type 7 7410 Name: count, dtype: int64 Chi-squared test: statistic=0.000, p-value=1.000 -> No significant difference in categorical distribution
### Coverage Metric ###
Coverage: 0.00% of original samples have a synthetic neighbor within 0.5
### Diversity Metric ###
Average pairwise distance among synthetic samples: 2668.566
Standard deviation of pairwise distances: 1376.369
### Density Metric ###
Average local density: 0.000 neighbors within a radius of 0.5
### Discriminative Score ###
Discriminative score (classifier accuracy): 0.852
### MMD Metric ###
Maximum Mean Discrepancy (MMD): 0.000
Validation metrics:
{4: {'continuous': {'Elevation': {'orig_mean': 2224.680582524272, 'orig_std': 101.53968598851593, 'synth_mean': 2552.034553398058, 'synth_std': 244.54675411155262, 'ks_stat': 0.7004854368932039, 'ks_p': 1.27e-321}, 'Aspect': {'orig_mean': 137.6, 'orig_std': 87.46085893447477, 'synth_mean': 115.96998058252426, 'synth_std': 88.48557076289768, 'ks_stat': 0.21067961165048543, 'ks_p': 4.07562087722522e-27}, 'Slope': {'orig_mean': 18.60970873786408, 'orig_std': 9.279644641618406, 'synth_mean': 17.367834951456313, 'synth_std': 6.876849762423798, 'ks_stat': 0.13980582524271845, 'ks_p': 3.9297757667819e-12}, 'Horizontal_Distance_To_Hydrology': {'orig_mean': 105.25873786407767, 'orig_std': 139.05169896237058, 'synth_mean': 94.66713592233009, 'synth_std': 94.63499622777543, 'ks_stat': 0.23058252427184467, 'ks_p': 1.9098016114115843e-32}, 'Vertical_Distance_To_Hydrology': {'orig_mean': 40.335436893203884, 'orig_std': 58.823198076201145, 'synth_mean': 22.769378640776697, 'synth_std': 36.872228147404606, 'ks_stat': 0.20242718446601943, 'ks_p': 4.724801095599635e-25}, 'Horizontal_Distance_To_Roadways': {'orig_mean': 920.2703883495145, 'orig_std': 368.14269040962176, 'synth_mean': 1128.8251359223302, 'synth_std': 817.7653983646048, 'ks_stat': 0.2262135922330097, 'ks_p': 3.1150656629825583e-31}, 'Hillshade_9am': {'orig_mean': 228.0631067961165, 'orig_std': 24.381656534870892, 'synth_mean': 224.60786407766994, 'synth_std': 17.487469897109303, 'ks_stat': 0.2436893203883495, 'ks_p': 3.153578898400587e-36}, 'Hillshade_Noon': {'orig_mean': 216.89854368932038, 'orig_std': 20.882750405835377, 'synth_mean': 220.40739805825243, 'synth_std': 19.620388084782356, 'ks_stat': 0.09271844660194174, 'ks_p': 1.4418752472206803e-05}, 'Hillshade_3pm': {'orig_mean': 111.64174757281553, 'orig_std': 49.050952335963395, 'synth_mean': 115.81266019417477, 'synth_std': 35.77751045740475, 'ks_stat': 0.1470873786407767, 'ks_p': 2.1835767343967275e-13}, 'Horizontal_Distance_To_Fire_Points': {'orig_mean': 860.6975728155339, 'orig_std': 480.8513630127819, 'synth_mean': 1193.6482912621357, 'synth_std': 773.0640617814727, 'ks_stat': 0.17184466019417477, 'ks_p': 3.861864573262583e-18}, 'Wilderness_Area1': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.170873786407767, 'synth_std': 0.37658149005407054, 'ks_stat': 0.170873786407767, 'ks_p': 6.128092020672713e-18}, 'Wilderness_Area2': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.013165048543689321, 'synth_std': 0.11298185626996733, 'ks_stat': 0.013592233009708738, 'ks_p': 0.9995362323903833}, 'Wilderness_Area3': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.027184466019417475, 'synth_std': 0.16269963427331025, 'ks_stat': 0.027184466019417475, 'ks_p': 0.6872238461926288}, 'Wilderness_Area4': {'orig_mean': 1.0, 'orig_std': 0.0, 'synth_mean': 0.5249611650485437, 'synth_std': 0.49877941244649265, 'ks_stat': 0.4766990291262136, 'ks_p': 7.498352025534808e-142}, 'Soil_Type1': {'orig_mean': 0.06553398058252427, 'orig_std': 0.2475257970684189, 'synth_mean': 0.03681553398058253, 'synth_std': 0.1866349626470626, 'ks_stat': 0.032524271844660196, 'ks_p': 0.4587998035108972}, 'Soil_Type2': {'orig_mean': 0.04466019417475728, 'orig_std': 0.20660683138770405, 'synth_mean': 0.017572815533980584, 'synth_std': 0.12970450096016153, 'ks_stat': 0.02815533980582524, 'ks_p': 0.6443546163811467}, 'Soil_Type3': {'orig_mean': 0.3674757281553398, 'orig_std': 0.4822345962511095, 'synth_mean': 0.11440776699029126, 'synth_std': 0.31587136908163177, 'ks_stat': 0.25679611650485434, 'ks_p': 3.1501157914029972e-40}, 'Soil_Type4': {'orig_mean': 0.062135922330097085, 'orig_std': 0.2414608707107312, 'synth_mean': 0.038427184466019414, 'synth_std': 0.19148301601345302, 'ks_stat': 0.02524271844660194, 'ks_p': 0.7708717232475797}, 'Soil_Type5': {'orig_mean': 0.018932038834951457, 'orig_std': 0.13631814786846588, 'synth_mean': 0.014825242718446601, 'synth_std': 0.11599872047688023, 'ks_stat': 0.006310679611650485, 'ks_p': 1.0}, 'Soil_Type6': {'orig_mean': 0.11407766990291263, 'orig_std': 0.3179827654638115, 'synth_mean': 0.022611650485436893, 'synth_std': 0.14735067109551128, 'ks_stat': 0.09271844660194174, 'ks_p': 1.4418752472206803e-05}, 'Soil_Type7': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.001912621359223301, 'synth_std': 0.03779814599350717, 'ks_stat': 0.002912621359223301, 'ks_p': 1.0}, 'Soil_Type8': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0016213592233009708, 'synth_std': 0.03748912806569954, 'ks_stat': 0.001941747572815534, 'ks_p': 1.0}, 'Soil_Type9': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.011699029126213593, 'synth_std': 0.10600954675378889, 'ks_stat': 0.013592233009708738, 'ks_p': 0.9995362323903833}, 'Soil_Type10': {'orig_mean': 0.08009708737864078, 'orig_std': 0.27150935358345324, 'synth_mean': 0.005825242718446602, 'synth_std': 0.07613762118849192, 'ks_stat': 0.07427184466019418, 'ks_p': 0.0010041538761779232}, 'Soil_Type11': {'orig_mean': 0.01262135922330097, 'orig_std': 0.11166070480117254, 'synth_mean': 0.019291262135922332, 'synth_std': 0.13721363898100417, 'ks_stat': 0.006796116504854369, 'ks_p': 0.9999999999999996}, 'Soil_Type12': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.03987378640776699, 'synth_std': 0.1943989355777793, 'ks_stat': 0.04174757281553398, 'ks_p': 0.180819878538918}, 'Soil_Type13': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.006796116504854369, 'synth_std': 0.08219786495626474, 'ks_stat': 0.006796116504854369, 'ks_p': 0.9999999999999996}, 'Soil_Type14': {'orig_mean': 0.059223300970873784, 'orig_std': 0.23609947327965441, 'synth_mean': 0.001941747572815534, 'synth_std': 0.04404384802597573, 'ks_stat': 0.05728155339805825, 'ks_p': 0.021781928018498854}, 'Soil_Type15': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0, 'synth_std': 0.0, 'ks_stat': 0.0, 'ks_p': 1.0}, 'Soil_Type16': {'orig_mean': 0.018932038834951457, 'orig_std': 0.13631814786846588, 'synth_mean': 0.01503883495145631, 'synth_std': 0.11947873684638664, 'ks_stat': 0.005339805825242718, 'ks_p': 1.0}, 'Soil_Type17': {'orig_mean': 0.1563106796116505, 'orig_std': 0.36323780147464063, 'synth_mean': 0.040834951456310685, 'synth_std': 0.1969556489166591, 'ks_stat': 0.11650485436893204, 'ks_p': 1.506608166926299e-08}, 'Soil_Type18': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.004475728155339805, 'synth_std': 0.06221117437336637, 'ks_stat': 0.005825242718446602, 'ks_p': 1.0}, 'Soil_Type19': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.03427184466019417, 'synth_std': 0.18138063506069102, 'ks_stat': 0.03495145631067961, 'ks_p': 0.36846597291938854}, 'Soil_Type20': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.016019417475728156, 'synth_std': 0.12464012184063944, 'ks_stat': 0.01650485436893204, 'ks_p': 0.9916389161066058}, 'Soil_Type21': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.002087378640776699, 'synth_std': 0.03812429337454515, 'ks_stat': 0.003883495145631068, 'ks_p': 1.0}, 'Soil_Type22': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.031067961165048542, 'synth_std': 0.17358570597957107, 'ks_stat': 0.031067961165048542, 'ks_p': 0.5181226557533719}, 'Soil_Type23': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.02330097087378641, 'synth_std': 0.1509309520371058, 'ks_stat': 0.02330097087378641, 'ks_p': 0.8472125918064675}, 'Soil_Type24': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.020077669902912623, 'synth_std': 0.13957868642799234, 'ks_stat': 0.020388349514563107, 'ks_p': 0.9359683197133181}, 'Soil_Type25': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0002815533980582524, 'synth_std': 0.009036065816321461, 'ks_stat': 0.000970873786407767, 'ks_p': 1.0}, 'Soil_Type26': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0, 'synth_std': 0.0, 'ks_stat': 0.0, 'ks_p': 1.0}, 'Soil_Type27': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0, 'synth_std': 0.0, 'ks_stat': 0.0, 'ks_p': 1.0}, 'Soil_Type28': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.000970873786407767, 'synth_std': 0.031158847642487785, 'ks_stat': 0.000970873786407767, 'ks_p': 1.0}, 'Soil_Type29': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.08640776699029126, 'synth_std': 0.2811017279831032, 'ks_stat': 0.08640776699029126, 'ks_p': 6.845215655350261e-05}, 'Soil_Type30': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.04087378640776699, 'synth_std': 0.19787307726359796, 'ks_stat': 0.04174757281553398, 'ks_p': 0.180819878538918}, 'Soil_Type31': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.03584466019417476, 'synth_std': 0.18469530800341213, 'ks_stat': 0.036893203883495145, 'ks_p': 0.3049385017478265}, 'Soil_Type32': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.06699029126213592, 'synth_std': 0.250126634405419, 'ks_stat': 0.06699029126213592, 'ks_p': 0.004138483023092364}, 'Soil_Type33': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.03911650485436893, 'synth_std': 0.19344982253316292, 'ks_stat': 0.039805825242718446, 'ks_p': 0.22470205053254247}, 'Soil_Type34': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.001504854368932039, 'synth_std': 0.03554610025954969, 'ks_stat': 0.001941747572815534, 'ks_p': 1.0}, 'Soil_Type35': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.001941747572815534, 'synth_std': 0.04404384802597573, 'ks_stat': 0.001941747572815534, 'ks_p': 1.0}, 'Soil_Type36': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.00023300970873786406, 'synth_std': 0.0074781234341970695, 'ks_stat': 0.000970873786407767, 'ks_p': 1.0}, 'Soil_Type37': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0007572815533980582, 'synth_std': 0.024303901161140472, 'ks_stat': 0.000970873786407767, 'ks_p': 1.0}, 'Soil_Type38': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0, 'synth_std': 0.0, 'ks_stat': 0.0, 'ks_p': 1.0}, 'Soil_Type39': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0, 'synth_std': 0.0, 'ks_stat': 0.0, 'ks_p': 1.0}, 'Soil_Type40': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0, 'synth_std': 0.0, 'ks_stat': 0.0, 'ks_p': 1.0}}, 'categorical': {'Cover_Type': {'orig_counts': {4: 2060}, 'synth_counts': {4: 1030}, 'chi2_stat': 0.0, 'chi2_p': 1.0}}, 'coverage': 0.0, 'diversity': {'avg_distance': 1412.6391380134398, 'std_distance': 834.9383754217445}, 'density': {'density_threshold': 0.5, 'average_density': 0.0, 'neighbor_counts': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, 'discriminative_score': 0.9503775620280475, 'mmd': 0.0014563106796116505}, 5: {'continuous': {'Elevation': {'orig_mean': 2793.0337837837837, 'orig_std': 89.39445358124863, 'synth_mean': 2965.944007050529, 'synth_std': 113.90548037087628, 'ks_stat': 0.697855464159812, 'ks_p': 0.0}, 'Aspect': {'orig_mean': 141.1987367802585, 'orig_std': 92.27425899508412, 'synth_mean': 122.2870652173913, 'synth_std': 103.1460783126756, 'ks_stat': 0.20710928319623972, 'ks_p': 1.2658220448677031e-85}, 'Slope': {'orig_mean': 16.794359576968272, 'orig_std': 8.052221428224303, 'synth_mean': 13.448680963572267, 'synth_std': 6.612808522055963, 'ks_stat': 0.23369565217391305, 'ks_p': 3.984903311790053e-109}, 'Horizontal_Distance_To_Hydrology': {'orig_mean': 209.27570505287898, 'orig_std': 171.6145701071857, 'synth_mean': 217.46246474735605, 'synth_std': 167.37687759677755, 'ks_stat': 0.06565804935370152, 'ks_p': 6.191885591061821e-09}, 'Vertical_Distance_To_Hydrology': {'orig_mean': 50.431698002350174, 'orig_std': 57.813665314540245, 'synth_mean': 29.069488836662753, 'synth_std': 44.324080083632126, 'ks_stat': 0.1913924794359577, 'ks_p': 4.18800102524897e-73}, 'Horizontal_Distance_To_Roadways': {'orig_mean': 1338.4823736780259, 'orig_std': 1016.5114172599532, 'synth_mean': 1917.9984518213864, 'synth_std': 1205.615344411468, 'ks_stat': 0.21695064629847238, 'ks_p': 5.553915587605952e-94}, 'Hillshade_9am': {'orig_mean': 223.3982079905993, 'orig_std': 22.900726790177675, 'synth_mean': 223.96627203290245, 'synth_std': 18.258649950881548, 'ks_stat': 0.10340775558166862, 'ks_p': 1.502166188248638e-21}, 'Hillshade_Noon': {'orig_mean': 219.01850763807286, 'orig_std': 24.69462580327198, 'synth_mean': 222.56956227967098, 'synth_std': 19.923300356739283, 'ks_stat': 0.09268507638072855, 'ks_p': 2.1664744787362672e-17}, 'Hillshade_3pm': {'orig_mean': 121.84767920094006, 'orig_std': 49.566916873278664, 'synth_mean': 124.7257902467685, 'synth_std': 37.81244428579517, 'ks_stat': 0.11045828437132785, 'ks_p': 1.557138699193773e-24}, 'Horizontal_Distance_To_Fire_Points': {'orig_mean': 1440.0323149236192, 'orig_std': 644.5398841370364, 'synth_mean': 2014.5033078730903, 'synth_std': 1277.6295015449855, 'ks_stat': 0.24324324324324326, 'ks_p': 2.765291489904695e-118}, 'Wilderness_Area1': {'orig_mean': 0.3752937720329025, 'orig_std': 0.4842342397543595, 'synth_mean': 0.6537896592244419, 'synth_std': 0.4757539181082574, 'ks_stat': 0.2786427732079906, 'ks_p': 1.3397767825732032e-155}, 'Wilderness_Area2': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.01493830787309048, 'synth_std': 0.12073202993247985, 'ks_stat': 0.01527614571092832, 'ks_p': 0.662825860774513}, 'Wilderness_Area3': {'orig_mean': 0.6247062279670975, 'orig_std': 0.4842342397543595, 'synth_mean': 0.5023942420681551, 'synth_std': 0.49983117541455213, 'ks_stat': 0.12294359576968272, 'ks_p': 2.6324954035367656e-30}, 'Wilderness_Area4': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0002937720329024677, 'synth_std': 0.017139779254776524, 'ks_stat': 0.0002937720329024677, 'ks_p': 1.0}, 'Soil_Type1': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0026439482961222094, 'synth_std': 0.05135886219178443, 'ks_stat': 0.0026439482961222094, 'ks_p': 1.0}, 'Soil_Type2': {'orig_mean': 0.029524089306698004, 'orig_std': 0.16928268285637257, 'synth_mean': 0.007670387779083431, 'synth_std': 0.08709202555569993, 'ks_stat': 0.021886016451233843, 'ks_p': 0.2260229990790185}, 'Soil_Type3': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.003933607520564043, 'synth_std': 0.061886848952413025, 'ks_stat': 0.004112808460634548, 'ks_p': 0.999999999999803}, 'Soil_Type4': {'orig_mean': 0.06477673325499413, 'orig_std': 0.24614956398486854, 'synth_mean': 0.03579612220916569, 'synth_std': 0.18570381603585087, 'ks_stat': 0.029524089306698004, 'ks_p': 0.03801346092587468}, 'Soil_Type5': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 8.225616921269096e-05, 'synth_std': 0.003908179457038306, 'ks_stat': 0.0005875440658049354, 'ks_p': 1.0}, 'Soil_Type6': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.00640716803760282, 'synth_std': 0.07891856421759262, 'ks_stat': 0.006756756756756757, 'ks_p': 0.9999433374041076}, 'Soil_Type7': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0002467685076380729, 'synth_std': 0.014397414574012281, 'ks_stat': 0.0002937720329024677, 'ks_p': 1.0}, 'Soil_Type8': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0003701527614571093, 'synth_std': 0.01526467063874114, 'ks_stat': 0.0008813160987074031, 'ks_p': 1.0}, 'Soil_Type9': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.004230317273795534, 'synth_std': 0.061907867216456684, 'ks_stat': 0.00499412455934195, 'ks_p': 0.9999999956465639}, 'Soil_Type10': {'orig_mean': 0.029230317273795534, 'orig_std': 0.1684638669328028, 'synth_mean': 0.0017626321974148062, 'synth_std': 0.04195285897740875, 'ks_stat': 0.02746768507638073, 'ks_p': 0.06474040346677169}, 'Soil_Type11': {'orig_mean': 0.07329612220916569, 'orig_std': 0.2606410926935236, 'synth_mean': 0.031178025851938893, 'synth_std': 0.17334598997687237, 'ks_stat': 0.04274383078730905, 'ks_p': 0.0004952859714183543}, 'Soil_Type12': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.06601351351351352, 'synth_std': 0.247909865898611, 'ks_stat': 0.06639247943595769, 'ks_p': 3.984016793389481e-09}, 'Soil_Type13': {'orig_mean': 0.14292009400705052, 'orig_std': 0.3500170510508267, 'synth_mean': 0.08843713278495886, 'synth_std': 0.28329267827674587, 'ks_stat': 0.05537602820211516, 'ks_p': 1.7729299682072112e-06}, 'Soil_Type14': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0013807285546415982, 'synth_std': 0.03365531395555992, 'ks_stat': 0.002056404230317274, 'ks_p': 1.0}, 'Soil_Type15': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0002673325499412456, 'synth_std': 0.015258153978149159, 'ks_stat': 0.0005875440658049354, 'ks_p': 1.0}, 'Soil_Type16': {'orig_mean': 0.0017626321974148062, 'orig_std': 0.041949777267412496, 'synth_mean': 0.0034488836662749708, 'synth_std': 0.05758513381188078, 'ks_stat': 0.002056404230317274, 'ks_p': 1.0}, 'Soil_Type17': {'orig_mean': 0.06492361927144535, 'orig_std': 0.24640913432376516, 'synth_mean': 0.004424206815511164, 'synth_std': 0.06566903240964707, 'ks_stat': 0.060810810810810814, 'ks_p': 1.0050340048843062e-07}, 'Soil_Type18': {'orig_mean': 0.0026439482961222094, 'orig_std': 0.05135508954975549, 'synth_mean': 0.005179200940070505, 'synth_std': 0.06970107596320176, 'ks_stat': 0.0032314923619271444, 'ks_p': 1.0}, 'Soil_Type19': {'orig_mean': 0.006462984723854289, 'orig_std': 0.08013836707533514, 'synth_mean': 0.005167450058754406, 'synth_std': 0.07121217475215653, 'ks_stat': 0.0014688601645123384, 'ks_p': 1.0}, 'Soil_Type20': {'orig_mean': 0.006316098707403055, 'orig_std': 0.07922832591184324, 'synth_mean': 0.01594300822561692, 'synth_std': 0.12454073484287373, 'ks_stat': 0.010135135135135136, 'ks_p': 0.9733050368112706}, 'Soil_Type21': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0010605170387779084, 'synth_std': 0.031132373256109902, 'ks_stat': 0.0011750881316098707, 'ks_p': 1.0}, 'Soil_Type22': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.048443008225616924, 'synth_std': 0.21429623484572818, 'ks_stat': 0.04905992949471211, 'ks_p': 3.553011620033504e-05}, 'Soil_Type23': {'orig_mean': 0.07887779083431257, 'orig_std': 0.26956772558695086, 'synth_mean': 0.1450822561692127, 'synth_std': 0.35194613505074773, 'ks_stat': 0.0668331374853114, 'ks_p': 3.050667471230229e-09}, 'Soil_Type24': {'orig_mean': 0.007050528789659225, 'orig_std': 0.08367704169546221, 'synth_mean': 0.033921856639247946, 'synth_std': 0.1804944259368133, 'ks_stat': 0.027614571092831962, 'ks_p': 0.06240398986350186}, 'Soil_Type25': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0006786133960047004, 'synth_std': 0.022749142405391685, 'ks_stat': 0.0011750881316098707, 'ks_p': 1.0}, 'Soil_Type26': {'orig_mean': 0.015569917743830788, 'orig_std': 0.12381335602741077, 'synth_mean': 0.003783783783783784, 'synth_std': 0.06003100595877297, 'ks_stat': 0.012338425381903642, 'ks_p': 0.8786357831594306}, 'Soil_Type27': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0009576968272620446, 'synth_std': 0.028760657268340418, 'ks_stat': 0.0014688601645123384, 'ks_p': 1.0}, 'Soil_Type28': {'orig_mean': 0.0013219741480611047, 'orig_std': 0.03633759050512096, 'synth_mean': 0.0007403055229142186, 'synth_std': 0.025179545862679797, 'ks_stat': 0.0007344300822561692, 'ks_p': 1.0}, 'Soil_Type29': {'orig_mean': 0.11031139835487662, 'orig_std': 0.3133005133568671, 'synth_mean': 0.2582961222091657, 'synth_std': 0.4374391582761011, 'ks_stat': 0.14879553466509987, 'ks_p': 3.034480869598468e-44}, 'Soil_Type30': {'orig_mean': 0.22414806110458285, 'orig_std': 0.41705066344144703, 'synth_mean': 0.14343125734430082, 'synth_std': 0.350142292100892, 'ks_stat': 0.08166862514688601, 'ks_p': 1.3566978996090854e-13}, 'Soil_Type31': {'orig_mean': 0.03495887191539365, 'orig_std': 0.18368915421027848, 'synth_mean': 0.046700940070505285, 'synth_std': 0.21076080058278285, 'ks_stat': 0.012044653349001176, 'ks_p': 0.895672489489127}, 'Soil_Type32': {'orig_mean': 0.04964747356051704, 'orig_std': 0.2172315203007057, 'synth_mean': 0.0763219741480611, 'synth_std': 0.2654529731662052, 'ks_stat': 0.02673325499412456, 'ks_p': 0.07757307831805478}, 'Soil_Type33': {'orig_mean': 0.05625734430082256, 'orig_std': 0.23043492616788772, 'synth_mean': 0.09045240893066979, 'synth_std': 0.2867484187982441, 'ks_stat': 0.034811985898942424, 'ks_p': 0.008103671622471774}, 'Soil_Type34': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0013160987074030553, 'synth_std': 0.0348309543351513, 'ks_stat': 0.0014688601645123384, 'ks_p': 1.0}, 'Soil_Type35': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0030052878965922446, 'synth_std': 0.053172510470798934, 'ks_stat': 0.0035252643948296123, 'ks_p': 1.0}, 'Soil_Type36': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.000863689776733255, 'synth_std': 0.024387053983923757, 'ks_stat': 0.0014688601645123384, 'ks_p': 1.0}, 'Soil_Type37': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.00012338425381903644, 'synth_std': 0.006864375633637026, 'ks_stat': 0.0005875440658049354, 'ks_p': 1.0}, 'Soil_Type38': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0011750881316098707, 'synth_std': 0.03426444517565237, 'ks_stat': 0.0011750881316098707, 'ks_p': 1.0}, 'Soil_Type39': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0005875440658049354, 'synth_std': 0.02423574655481385, 'ks_stat': 0.0005875440658049354, 'ks_p': 1.0}, 'Soil_Type40': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0008813160987074031, 'synth_std': 0.029678243453750947, 'ks_stat': 0.0008813160987074031, 'ks_p': 1.0}}, 'categorical': {'Cover_Type': {'orig_counts': {5: 6808}, 'synth_counts': {5: 3404}, 'chi2_stat': 0.0, 'chi2_p': 1.0}}, 'coverage': 0.0, 'diversity': {'avg_distance': 2169.975555348717, 'std_distance': 1254.7884868673132}, 'density': {'density_threshold': 0.5, 'average_density': 0.0, 'neighbor_counts': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, 'discriminative_score': 0.8436684073107049, 'mmd': 0.0004406580493537016}, 6: {'continuous': {'Elevation': {'orig_mean': 2418.806967622856, 'orig_std': 188.4044273186044, 'synth_mean': 2739.624093216428, 'synth_std': 223.71676016440608, 'ks_stat': 0.6189142654394133, 'ks_p': 0.0}, 'Aspect': {'orig_mean': 180.82304083672997, 'orig_std': 133.86499632737966, 'synth_mean': 189.04447623442545, 'synth_std': 113.11493477081794, 'ks_stat': 0.16610281846262143, 'ks_p': 5.616344841662846e-105}, 'Slope': {'orig_mean': 19.026070906713834, 'orig_std': 7.917161491490686, 'synth_mean': 17.132765728349487, 'synth_std': 7.45140170470996, 'ks_stat': 0.14732117893161167, 'ks_p': 1.4503584445515667e-82}, 'Horizontal_Distance_To_Hydrology': {'orig_mean': 158.61778051218948, 'orig_std': 123.965797805156, 'synth_mean': 190.37084756191354, 'synth_std': 152.93310647138904, 'ks_stat': 0.0992710933923251, 'ks_p': 1.2433178658512448e-37}, 'Vertical_Distance_To_Hydrology': {'orig_mean': 44.92124894255172, 'orig_std': 46.37331990679954, 'synth_mean': 44.004760806029836, 'synth_std': 49.46248812142398, 'ks_stat': 0.03818970083022388, 'ks_p': 6.283092249824128e-06}, 'Horizontal_Distance_To_Roadways': {'orig_mean': 1033.6413904483582, 'orig_std': 570.3111971735875, 'synth_mean': 1553.1775572988772, 'synth_std': 1060.268348929967, 'ks_stat': 0.22736479245149044, 'ks_p': 2.1971084225522207e-197}, 'Hillshade_9am': {'orig_mean': 192.93193878335768, 'orig_std': 33.425276326604475, 'synth_mean': 196.41454545454545, 'synth_std': 28.490848113255375, 'ks_stat': 0.10772683496666363, 'ks_p': 2.963020659761534e-44}, 'Hillshade_Noon': {'orig_mean': 209.80435284165193, 'orig_std': 24.277560823035, 'synth_mean': 217.61936471312106, 'synth_std': 20.51490854917379, 'ks_stat': 0.1511663507704249, 'ks_p': 6.257452699364349e-87}, 'Hillshade_3pm': {'orig_mean': 148.202337922018, 'orig_std': 45.37032554099632, 'synth_mean': 154.92445469927702, 'synth_std': 34.72502070263969, 'ks_stat': 0.13065208775374837, 'ks_p': 5.76810923002625e-65}, 'Horizontal_Distance_To_Fire_Points': {'orig_mean': 1058.2918557256019, 'orig_std': 579.8881929883478, 'synth_mean': 1533.5643270266114, 'synth_std': 993.2590355042474, 'ks_stat': 0.2545926387628673, 'ks_p': 3.92691344284179e-248}, 'Wilderness_Area1': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.2147285033071835, 'synth_std': 0.4104336254421539, 'ks_stat': 0.21519766189816947, 'ks_p': 1.187506175466021e-176}, 'Wilderness_Area2': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.021030610675280725, 'synth_std': 0.14337508361393883, 'ks_stat': 0.021073680972158115, 'ks_p': 0.041980319568044266}, 'Wilderness_Area3': {'orig_mean': 0.4405906329308621, 'orig_std': 0.4964770724408105, 'synth_mean': 0.34993231810490694, 'synth_std': 0.4767979688618273, 'ks_stat': 0.09095211577965456, 'ks_p': 1.1967401957508316e-31}, 'Wilderness_Area4': {'orig_mean': 0.5594093670691379, 'orig_std': 0.4964770724408105, 'synth_mean': 0.09894170127672666, 'synth_std': 0.2980394188964282, 'ks_stat': 0.46157826416189285, 'ks_p': 0.0}, 'Soil_Type1': {'orig_mean': 0.04414365915557948, 'orig_std': 0.20542210636060013, 'synth_mean': 0.007054299338563298, 'synth_std': 0.0816807008863298, 'ks_stat': 0.03783693711281688, 'ks_p': 7.930421522192405e-06}, 'Soil_Type2': {'orig_mean': 0.07405983234638161, 'orig_std': 0.2618783071691158, 'synth_mean': 0.02572065836025227, 'synth_std': 0.15727953982813883, 'ks_stat': 0.049294411641874536, 'ks_p': 1.3641166167552445e-09}, 'Soil_Type3': {'orig_mean': 0.01238175805583327, 'orig_std': 0.11058657526389193, 'synth_mean': 0.0029995385325334565, 'synth_std': 0.05421567896781208, 'ks_stat': 0.009612953256571632, 'ks_p': 0.8142986835779089}, 'Soil_Type4': {'orig_mean': 0.0362993155425671, 'orig_std': 0.18704108029489808, 'synth_mean': 0.025296108291032147, 'synth_std': 0.15658939692542292, 'ks_stat': 0.011380072349212123, 'ks_p': 0.6243048357519361}, 'Soil_Type5': {'orig_mean': 0.03330000769053296, 'orig_std': 0.17942573125732267, 'synth_mean': 0.00384402399630826, 'synth_std': 0.060414004795541675, 'ks_stat': 0.03022355791357556, 'ks_p': 0.0007129421516634265}, 'Soil_Type6': {'orig_mean': 0.07644389756210106, 'orig_std': 0.2657172520537853, 'synth_mean': 0.015712967235809876, 'synth_std': 0.12350448163582009, 'ks_stat': 0.06136929365500976, 'ks_p': 1.2427680707772282e-14}, 'Soil_Type7': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0007921858175665283, 'synth_std': 0.023151076542636307, 'ks_stat': 0.0015382248884786565, 'ks_p': 1.0}, 'Soil_Type8': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.000661436702045839, 'synth_std': 0.021750882642324772, 'ks_stat': 0.001230579910782903, 'ks_p': 1.0}, 'Soil_Type9': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0024303953237963393, 'synth_std': 0.048158392117748, 'ks_stat': 0.0026149823104137937, 'ks_p': 1.0}, 'Soil_Type10': {'orig_mean': 0.5119587787433669, 'orig_std': 0.4998761890936719, 'synth_mean': 0.15751884325488386, 'synth_std': 0.36366952008270476, 'ks_stat': 0.35582895256277935, 'ks_p': 0.0}, 'Soil_Type11': {'orig_mean': 0.030069983849880796, 'orig_std': 0.17078648394289592, 'synth_mean': 0.02990770650669128, 'synth_std': 0.16966008760682186, 'ks_stat': 0.0006898884799376725, 'ks_p': 1.0}, 'Soil_Type12': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.05808029533917859, 'synth_std': 0.2335942050406852, 'ks_stat': 0.05845254576219039, 'ks_p': 2.587729612998625e-13}, 'Soil_Type13': {'orig_mean': 0.03476120895178036, 'orig_std': 0.18318146166238922, 'synth_mean': 0.018572527303491772, 'synth_std': 0.1344553417729793, 'ks_stat': 0.016763977756579673, 'ks_p': 0.17296254827859836}, 'Soil_Type14': {'orig_mean': 0.019533953702991616, 'orig_std': 0.138397439965391, 'synth_mean': 0.002045839101676665, 'synth_std': 0.044052748696128616, 'ks_stat': 0.017688083836817192, 'ks_p': 0.1312147706908191}, 'Soil_Type15': {'orig_mean': 0.00023071598861801123, 'orig_std': 0.015188169715618304, 'synth_mean': 0.0008460236886632825, 'synth_std': 0.023435498615142835, 'ks_stat': 0.00146133138870852, 'ks_p': 1.0}, 'Soil_Type16': {'orig_mean': 0.01499653926017073, 'orig_std': 0.12154332221820999, 'synth_mean': 0.006488232579603137, 'synth_std': 0.0788235872056585, 'ks_stat': 0.009305107172799532, 'ks_p': 0.8436901727246968}, 'Soil_Type17': {'orig_mean': 0.04075982465584865, 'orig_std': 0.19774091246171238, 'synth_mean': 0.006672819566220581, 'synth_std': 0.07920929732454911, 'ks_stat': 0.03522221505732526, 'ks_p': 4.164550681233219e-05}, 'Soil_Type18': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0047269650822950315, 'synth_std': 0.06806472074206689, 'ks_stat': 0.005076142131979711, 'ks_p': 0.9998604529638988}, 'Soil_Type19': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0024180895246885097, 'synth_std': 0.048370664397516965, 'ks_stat': 0.0027688047992616704, 'ks_p': 0.9999999999999973}, 'Soil_Type20': {'orig_mean': 0.01607321387372145, 'orig_std': 0.1257620054328417, 'synth_mean': 0.025160744500846023, 'synth_std': 0.1558181173538295, 'ks_stat': 0.009922786741568546, 'ks_p': 0.7830402003654133}, 'Soil_Type21': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.002045839101676665, 'synth_std': 0.04326730927963566, 'ks_stat': 0.0026149823104137937, 'ks_p': 1.0}, 'Soil_Type22': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.05898323334871558, 'synth_std': 0.235365633453875, 'ks_stat': 0.05937548069527765, 'ks_p': 1.0061484720831559e-13}, 'Soil_Type23': {'orig_mean': 0.0016150119203260785, 'orig_std': 0.040156290525832236, 'synth_mean': 0.07591139824642362, 'synth_std': 0.26448129931430514, 'ks_stat': 0.07498858752591298, 'ks_p': 1.2166542396778613e-21}, 'Soil_Type24': {'orig_mean': 0.00792124894255172, 'orig_std': 0.0886516055408375, 'synth_mean': 0.030809106291339792, 'synth_std': 0.17247124357897486, 'ks_stat': 0.023304716293565786, 'ks_p': 0.017767324617176537}, 'Soil_Type25': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0005568374096292879, 'synth_std': 0.018491512600180584, 'ks_stat': 0.0010767574219351372, 'ks_p': 1.0}, 'Soil_Type26': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0023227195816028306, 'synth_std': 0.047168318791190274, 'ks_stat': 0.0027688047992616704, 'ks_p': 0.9999999999999973}, 'Soil_Type27': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.001844331641285956, 'synth_std': 0.04153513149430711, 'ks_stat': 0.00230733733271804, 'ks_p': 1.0}, 'Soil_Type28': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.001541301338255653, 'synth_std': 0.03769749259278634, 'ks_stat': 0.0019996923550222867, 'ks_p': 1.0}, 'Soil_Type29': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.18235963697892632, 'synth_std': 0.38597150217017184, 'ks_stat': 0.1828949392401169, 'ks_p': 2.3851177794316953e-127}, 'Soil_Type30': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.030339947700353795, 'synth_std': 0.17097932790728834, 'ks_stat': 0.030918320258421783, 'ks_p': 0.0004930417750469297}, 'Soil_Type31': {'orig_mean': 0.003230023840652157, 'orig_std': 0.05674361998828513, 'synth_mean': 0.042085832948777116, 'synth_std': 0.200640173945305, 'ks_stat': 0.03907116059251192, 'ks_p': 3.4784993361388257e-06}, 'Soil_Type32': {'orig_mean': 0.011689610089979235, 'orig_std': 0.10748884434532151, 'synth_mean': 0.08978003384094756, 'synth_std': 0.28551076645424633, 'ks_stat': 0.07875801335256805, 'ks_p': 7.884557363734161e-24}, 'Soil_Type33': {'orig_mean': 0.029839267861262786, 'orig_std': 0.17015026432424388, 'synth_mean': 0.059230887555760656, 'synth_std': 0.2359707786465156, 'ks_stat': 0.029536212834014863, 'ks_p': 0.001018437822642672}, 'Soil_Type34': {'orig_mean': 0.0006921479658540336, 'orig_std': 0.026300610148112514, 'synth_mean': 0.0029349330872173508, 'synth_std': 0.053131479118671526, 'ks_stat': 0.0026919467887991377, 'ks_p': 0.9999999999999997}, 'Soil_Type35': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.002368866328257191, 'synth_std': 0.04725466107827125, 'ks_stat': 0.0027688047992616704, 'ks_p': 0.9999999999999973}, 'Soil_Type36': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0007214274726965082, 'synth_std': 0.022242428288687204, 'ks_stat': 0.0013844023996307797, 'ks_p': 1.0}, 'Soil_Type37': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0007091216735886787, 'synth_std': 0.02177023708957062, 'ks_stat': 0.0015382248884786565, 'ks_p': 1.0}, 'Soil_Type38': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0015382248884786955, 'synth_std': 0.03919304834576037, 'ks_stat': 0.0015382248884786565, 'ks_p': 1.0}, 'Soil_Type39': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.00015382248884786957, 'synth_std': 0.012402519455653741, 'ks_stat': 0.00015382248884787675, 'ks_p': 1.0}, 'Soil_Type40': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.00030764497769573913, 'synth_std': 0.01753846195363694, 'ks_stat': 0.0003076449776957535, 'ks_p': 1.0}}, 'categorical': {'Cover_Type': {'orig_counts': {6: 13003}, 'synth_counts': {6: 6501}, 'chi2_stat': 0.0, 'chi2_p': 1.0}}, 'coverage': 0.0, 'diversity': {'avg_distance': 1816.2675233969878, 'std_distance': 1051.1833408262046}, 'density': {'density_threshold': 0.5, 'average_density': 0.0, 'neighbor_counts': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, 'discriminative_score': 0.9096035543403964, 'mmd': 0.00023072781838720665}, 7: {'continuous': {'Elevation': {'orig_mean': 3354.8018218623483, 'orig_std': 83.47128705684746, 'synth_mean': 3200.240920377868, 'synth_std': 109.48667217105123, 'ks_stat': 0.5869770580296896, 'ks_p': 0.0}, 'Aspect': {'orig_mean': 151.5770580296896, 'orig_std': 109.18982697260762, 'synth_mean': 146.50608771929822, 'synth_std': 109.40858787959158, 'ks_stat': 0.06059379217273955, 'ks_p': 3.288929572421437e-16}, 'Slope': {'orig_mean': 13.981241565452091, 'orig_std': 7.018897040084144, 'synth_mean': 10.86657624831309, 'synth_std': 6.036424604481568, 'ks_stat': 0.23535762483130906, 'ks_p': 3.500946873230561e-241}, 'Horizontal_Distance_To_Hydrology': {'orig_mean': 339.2845479082321, 'orig_std': 279.1096067012082, 'synth_mean': 369.94228879892034, 'synth_std': 217.9216342079156, 'ks_stat': 0.16626180836707152, 'ks_p': 8.071822810955321e-120}, 'Vertical_Distance_To_Hydrology': {'orig_mean': 62.59102564102564, 'orig_std': 70.54431073974342, 'synth_mean': 51.53426315789474, 'synth_std': 55.3706697661361, 'ks_stat': 0.08036437246963568, 'ks_p': 3.3652998525883706e-28}, 'Horizontal_Distance_To_Roadways': {'orig_mean': 2701.7346153846156, 'orig_std': 1160.656744417452, 'synth_mean': 3434.672280701754, 'synth_std': 1515.7500088484667, 'ks_stat': 0.22577597840755737, 'ks_p': 9.39914850125505e-222}, 'Hillshade_9am': {'orig_mean': 217.56113360323886, 'orig_std': 23.05100101690743, 'synth_mean': 220.00613495276653, 'synth_std': 19.950760941072495, 'ks_stat': 0.07361673414304992, 'ks_p': 9.972868442354875e-24}, 'Hillshade_Noon': {'orig_mean': 222.4417004048583, 'orig_std': 18.400575759522358, 'synth_mean': 229.71178947368423, 'synth_std': 15.786369412722092, 'ks_stat': 0.17368421052631577, 'ks_p': 8.63346191167709e-131}, 'Hillshade_3pm': {'orig_mean': 135.14082321187584, 'orig_std': 37.86658426356297, 'synth_mean': 143.24844939271256, 'synth_std': 35.02661147570957, 'ks_stat': 0.07705802968960862, 'ks_p': 5.853461281111533e-26}, 'Horizontal_Distance_To_Fire_Points': {'orig_mean': 2067.645141700405, 'orig_std': 1088.7544322911415, 'synth_mean': 2464.203269905533, 'synth_std': 1460.7860899518164, 'ks_stat': 0.12395411605937923, 'ks_p': 1.300227497792898e-66}, 'Wilderness_Area1': {'orig_mean': 0.2595141700404858, 'orig_std': 0.4383828613991651, 'synth_mean': 0.6064925775978408, 'synth_std': 0.4883430384615897, 'ks_stat': 0.34777327935222674, 'ks_p': 0.0}, 'Wilderness_Area2': {'orig_mean': 0.11356275303643724, 'orig_std': 0.3172901624890703, 'synth_mean': 0.10302968960863698, 'synth_std': 0.3035527437704109, 'ks_stat': 0.01140350877192986, 'ks_p': 0.5378817086879545}, 'Wilderness_Area3': {'orig_mean': 0.6269230769230769, 'orig_std': 0.4836386209729171, 'synth_mean': 0.525353576248313, 'synth_std': 0.4992420390233302, 'ks_stat': 0.10222672064777327, 'ks_p': 2.1290255165868838e-45}, 'Wilderness_Area4': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0, 'synth_std': 0.0, 'ks_stat': 0.0, 'ks_p': 1.0}, 'Soil_Type1': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.001176788124156545, 'synth_std': 0.033887339662262136, 'ks_stat': 0.0012145748987854033, 'ks_p': 1.0}, 'Soil_Type2': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.004989203778677463, 'synth_std': 0.070108999778581, 'ks_stat': 0.00512820512820511, 'ks_p': 0.9994136184083606}, 'Soil_Type3': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0007894736842105263, 'synth_std': 0.02628293158633467, 'ks_stat': 0.0010796221322537658, 'ks_p': 1.0}, 'Soil_Type4': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.009369770580296897, 'synth_std': 0.095165608419543, 'ks_stat': 0.009986504723346834, 'ks_p': 0.7041365823032812}, 'Soil_Type5': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0007921727395411606, 'synth_std': 0.027031696940722376, 'ks_stat': 0.0009446693657220173, 'ks_p': 1.0}, 'Soil_Type6': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.008696356275303643, 'synth_std': 0.09230335388139482, 'ks_stat': 0.009041835357624817, 'ks_p': 0.8105531112321922}, 'Soil_Type7': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.000233468286099865, 'synth_std': 0.011448571678431507, 'ks_stat': 0.0006747638326585204, 'ks_p': 1.0}, 'Soil_Type8': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0003319838056680162, 'synth_std': 0.013336510328379524, 'ks_stat': 0.0008097165991902688, 'ks_p': 1.0}, 'Soil_Type9': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0005614035087719299, 'synth_std': 0.021544695829763254, 'ks_stat': 0.0009446693657220173, 'ks_p': 1.0}, 'Soil_Type10': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0002699055330634278, 'synth_std': 0.01642769319316587, 'ks_stat': 0.00026990553306338594, 'ks_p': 1.0}, 'Soil_Type11': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.010105263157894737, 'synth_std': 0.09944217332417296, 'ks_stat': 0.010391363022941968, 'ks_p': 0.6563089084084164}, 'Soil_Type12': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.040870445344129556, 'synth_std': 0.19772449807657017, 'ks_stat': 0.04129554655870449, 'ks_p': 9.319118463389314e-08}, 'Soil_Type13': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.012831309041835359, 'synth_std': 0.1120997997986665, 'ks_stat': 0.013090418353576272, 'ks_p': 0.3625206403586857}, 'Soil_Type14': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.001086369770580297, 'synth_std': 0.029579668218995516, 'ks_stat': 0.0016194331983805377, 'ks_p': 1.0}, 'Soil_Type15': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.00044264507422402154, 'synth_std': 0.017505173922917994, 'ks_stat': 0.0008097165991902688, 'ks_p': 1.0}, 'Soil_Type16': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0018515519568151147, 'synth_std': 0.04211764675037665, 'ks_stat': 0.002024291497975672, 'ks_p': 1.0}, 'Soil_Type17': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0001349527665317139, 'synth_std': 0.01161691725595538, 'ks_stat': 0.00013495276653174848, 'ks_p': 1.0}, 'Soil_Type18': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0015924426450742242, 'synth_std': 0.03820123665475736, 'ks_stat': 0.002024291497975672, 'ks_p': 1.0}, 'Soil_Type19': {'orig_mean': 0.00020242914979757084, 'orig_std': 0.014226799695655715, 'synth_mean': 0.009395411605937922, 'synth_std': 0.09499933682415847, 'ks_stat': 0.00991902834008096, 'ks_p': 0.7120430457173208}, 'Soil_Type20': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.009333333333333332, 'synth_std': 0.09578335394554732, 'ks_stat': 0.0095816464237517, 'ks_p': 0.7510497995688806}, 'Soil_Type21': {'orig_mean': 0.0005398110661268556, 'orig_std': 0.02322834642053577, 'synth_mean': 0.001213225371120108, 'synth_std': 0.03282898649702941, 'ks_stat': 0.0010796221322536548, 'ks_p': 1.0}, 'Soil_Type22': {'orig_mean': 0.007354925775978407, 'orig_std': 0.08544778235689761, 'synth_mean': 0.06672334682860999, 'synth_std': 0.249108504373376, 'ks_stat': 0.05998650472334688, 'ks_p': 6.790942562199015e-16}, 'Soil_Type23': {'orig_mean': 0.036302294197031036, 'orig_std': 0.1870475832928145, 'synth_mean': 0.11511605937921728, 'synth_std': 0.3189702756333378, 'ks_stat': 0.0790823211875844, 'ks_p': 2.5525507252282764e-27}, 'Soil_Type24': {'orig_mean': 0.00931174089068826, 'orig_std': 0.09605027270184044, 'synth_mean': 0.04511875843454791, 'synth_std': 0.2071299436020481, 'ks_stat': 0.036302294197031015, 'ks_p': 4.309379998229394e-06}, 'Soil_Type25': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.00046828609986504727, 'synth_std': 0.0186096392458815, 'ks_stat': 0.0009446693657220173, 'ks_p': 1.0}, 'Soil_Type26': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.007442645074224021, 'synth_std': 0.08446255592415013, 'ks_stat': 0.0080971659919028, 'ks_p': 0.8996714611165809}, 'Soil_Type27': {'orig_mean': 0.001417004048582996, 'orig_std': 0.037617703722777986, 'synth_mean': 0.001727395411605938, 'synth_std': 0.03838747500302367, 'ks_stat': 0.0008771929824561431, 'ks_p': 1.0}, 'Soil_Type28': {'orig_mean': 0.0, 'orig_std': 0.0, 'synth_mean': 0.0019581646423751688, 'synth_std': 0.04116223351999484, 'ks_stat': 0.002564102564102555, 'ks_p': 0.9999999999999989}, 'Soil_Type29': {'orig_mean': 0.04129554655870445, 'orig_std': 0.19897963709522132, 'synth_mean': 0.20628744939271257, 'synth_std': 0.40448253772865367, 'ks_stat': 0.16531713900134948, 'ks_p': 1.8535588415883711e-118}, 'Soil_Type30': {'orig_mean': 0.008367071524966262, 'orig_std': 0.09109129229892422, 'synth_mean': 0.02950472334682861, 'synth_std': 0.16893531069688814, 'ks_stat': 0.021457489878542457, 'ks_p': 0.020849854964823264}, 'Soil_Type31': {'orig_mean': 0.011066126855600539, 'orig_std': 0.10461551596662122, 'synth_mean': 0.04450877192982456, 'synth_std': 0.2056622753731255, 'ks_stat': 0.034143049932523706, 'ks_p': 1.9410842347739272e-05}, 'Soil_Type32': {'orig_mean': 0.04298245614035088, 'orig_std': 0.20282440787645273, 'synth_mean': 0.10120242914979759, 'synth_std': 0.30128531659718794, 'ks_stat': 0.058771929824561364, 'ks_p': 2.8323130745710954e-15}, 'Soil_Type33': {'orig_mean': 0.03218623481781376, 'orig_std': 0.17650037721266154, 'synth_mean': 0.08573819163292848, 'synth_std': 0.2794430793899637, 'ks_stat': 0.054318488529014775, 'ks_p': 4.1443899328477596e-13}, 'Soil_Type34': {'orig_mean': 0.0023616734143049934, 'orig_std': 0.04854127011675909, 'synth_mean': 0.0028744939271255062, 'synth_std': 0.05124917267631789, 'ks_stat': 0.001147098515519529, 'ks_p': 1.0}, 'Soil_Type35': {'orig_mean': 0.04865047233468286, 'orig_std': 0.2151435035905931, 'synth_mean': 0.005012145748987854, 'synth_std': 0.06905181713349418, 'ks_stat': 0.0441970310391363, 'ks_p': 8.00481453754101e-09}, 'Soil_Type36': {'orig_mean': 0.0031039136302294197, 'orig_std': 0.05562812377992154, 'synth_mean': 0.0002456140350877193, 'synth_std': 0.013425122060621096, 'ks_stat': 0.003103913630229438, 'ks_p': 0.9999999998921861}, 'Soil_Type37': {'orig_mean': 0.014709851551956815, 'orig_std': 0.12039289784837673, 'synth_mean': 0.0005236167341430499, 'synth_std': 0.01938509572940824, 'ks_stat': 0.014574898785425061, 'ks_p': 0.24240397527829194}, 'Soil_Type38': {'orig_mean': 0.308974358974359, 'orig_std': 0.46208615243463086, 'synth_mean': 0.06632928475033738, 'synth_std': 0.24804435700686478, 'ks_stat': 0.24392712550607287, 'ks_p': 2.8000230313558627e-259}, 'Soil_Type39': {'orig_mean': 0.27280701754385966, 'orig_std': 0.44541748485759797, 'synth_mean': 0.05790013495276653, 'synth_std': 0.23268568361332348, 'ks_stat': 0.2161268556005398, 'ks_p': 4.836948142263184e-203}, 'Soil_Type40': {'orig_mean': 0.15836707152496626, 'orig_std': 0.36509716036867795, 'synth_mean': 0.032846153846153844, 'synth_std': 0.17708474210617708, 'ks_stat': 0.12678812415654517, 'ks_p': 1.103225475081324e-69}}, 'categorical': {'Cover_Type': {'orig_counts': {7: 14820}, 'synth_counts': {7: 7410}, 'chi2_stat': 0.0, 'chi2_p': 1.0}}, 'coverage': 0.0, 'diversity': {'avg_distance': 2668.5664518665244, 'std_distance': 1376.3691128108833}, 'density': {'density_threshold': 0.5, 'average_density': 0.0, 'neighbor_counts': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, 'discriminative_score': 0.8524516419253262, 'mmd': 0.00020242914979757084}}
### Target Distribution Analysis on Original Training Set ###
Target counts:
Cover_Type
2 208214
1 155577
3 26803
7 14820
6 13003
5 6808
4 2060
Name: count, dtype: int64
Relative frequencies:
Cover_Type
2 0.49
1 0.36
3 0.06
7 0.03
6 0.03
5 0.02
4 0.00
Name: count, dtype: float64
### Target Distribution Analysis on Augmented Training Set ### Target counts: Cover_Type 2 208214 1 155577 3 26803 7 22230 6 19504 5 10212 4 3090 Name: count, dtype: int64 Relative frequencies: Cover_Type 2 0.47 1 0.35 3 0.06 7 0.05 6 0.04 5 0.02 4 0.01 Name: count, dtype: float64
### Target Distribution Analysis on Test Set ### Target counts: Cover_Type 2 69405 1 51859 3 8935 7 4940 6 4335 5 2269 4 686 Name: count, dtype: int64 Relative frequencies: Cover_Type 2 0.49 1 0.36 3 0.06 7 0.03 6 0.03 5 0.02 4 0.00 Name: count, dtype: float64
In [5]:
import pandas as pd
from MachineLearningModels.MultiClassLogisticRegression import train_logistic_model, evaluate_model, compare_models
from sklearn.preprocessing import LabelEncoder
import numpy as np
# Load CSV files for the Yeast dataset.
original_train = pd.read_csv("OutputTrainingSets/original_trainVAEForestFINAL.csv")
augmented_train = pd.read_csv("OutputTrainingSets/augmented_trainVAEForestFINAL.csv")
test_set = pd.read_csv("OutputTrainingSets/test_setVAEForestFINAL.csv")
# Define the feature columns and target.
features = numeric_features
# OR
#features = continuous_features
categorical_features = ["Cover_Type"]
# Re-map the target column so that labels are contiguous (0, 1, 2, ...).
le = LabelEncoder()
original_train[target] = le.fit_transform(original_train[target])
augmented_train[target] = le.transform(augmented_train[target])
test_set[target] = le.transform(test_set[target])
# Train a Logistic Regression model on the original training dataset.
model_original = train_logistic_model(original_train, features, target)
metrics_original = evaluate_model(model_original, test_set, features, target)
# Train a Logistic Regression model on the augmented training dataset.
model_augmented = train_logistic_model(augmented_train, features, target)
metrics_augmented = evaluate_model(model_augmented, test_set, features, target)
unique_labels = np.sort(metrics_original['y_test'].unique())
# Now, inverse transform these labels using the same LabelEncoder 'le' used earlier
target_names = [str(x) for x in le.inverse_transform(unique_labels)]
# Compare the performance of the two models.
compare_models(metrics_original, metrics_augmented, target_names)
=== Original Training Model Metrics ===
Accuracy: 0.720
AUC: 0.930
Classification Report:
precision recall f1-score support
1 0.72 0.74 0.73 51859
2 0.73 0.80 0.76 69405
3 0.61 0.65 0.63 8935
4 0.43 0.34 0.38 686
5 0.67 0.02 0.04 2269
6 0.42 0.12 0.18 4335
7 0.97 0.37 0.54 4940
accuracy 0.72 142429
macro avg 0.65 0.43 0.47 142429
weighted avg 0.72 0.72 0.71 142429
Confusion Matrix:
[[38574 13257 8 0 0 0 20]
[12426 55499 1336 0 21 106 17]
[ 1 2263 5806 258 0 607 0]
[ 0 20 433 231 0 2 0]
[ 1 2159 54 0 42 0 13]
[ 1 1841 1929 48 0 514 2]
[ 2376 730 0 0 0 0 1834]]
=== Augmented Training Model Metrics ===
Accuracy: 0.736
AUC: 0.937
Classification Report:
precision recall f1-score support
1 0.74 0.74 0.74 51859
2 0.74 0.78 0.76 69405
3 0.64 0.60 0.62 8935
4 0.38 0.52 0.44 686
5 1.00 0.00 0.00 2269
6 0.52 0.39 0.45 4335
7 1.00 0.92 0.96 4940
accuracy 0.74 142429
macro avg 0.72 0.56 0.57 142429
weighted avg 0.74 0.74 0.73 142429
Confusion Matrix:
[[38380 13457 9 12 0 0 1]
[13401 54442 1283 13 0 253 13]
[ 1 1890 5344 458 0 1242 0]
[ 0 5 294 356 0 31 0]
[ 6 2190 61 0 2 9 1]
[ 0 1143 1396 106 0 1687 3]
[ 63 330 0 0 0 0 4547]]
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
"""
import pandas as pd
from MachineLearningModels.MultiClassXGBoostComparison import train_xgb_model, evaluate_model, compare_models
from sklearn.preprocessing import LabelEncoder
import numpy as np
# Load CSV files for the Yeast dataset.
original_train = pd.read_csv("OutputTrainingSets/original_trainVAEForest2.csv")
augmented_train = pd.read_csv("OutputTrainingSets/augmented_trainVAEForest2.csv")
test_set = pd.read_csv("OutputTrainingSets/test_setVAEForest2.csv")
# Define the feature columns and target.
# For the Yeast dataset, typical numeric features are:
features = numeric_features
categorical_features = ["Cover_Type"]
# Re-map the target column so that labels are contiguous integers (0, 1, 2, …)
le = LabelEncoder()
original_train[target] = le.fit_transform(original_train[target])
augmented_train[target] = le.transform(augmented_train[target])
test_set[target] = le.transform(test_set[target])
# Train a multi-class XGBoost model on the original training dataset.
model_original = train_xgb_model(original_train, features, target)
metrics_original = evaluate_model(model_original, test_set, features, target)
# Train a multi-class XGBoost model on the augmented training dataset.
model_augmented = train_xgb_model(augmented_train, features, target)
metrics_augmented = evaluate_model(model_augmented, test_set, features, target)
unique_labels = np.sort(metrics_original['y_test'].unique())
# Now, inverse transform these labels using the same LabelEncoder 'le' used earlier
target_names = [str(x) for x in le.inverse_transform(unique_labels)]
# Compare the performance of the two models.
compare_models(metrics_original, metrics_augmented, target_names)
"""
In [ ]:
In [ ]:
"""
import pandas as pd
from MachineLearningModels.MultiClassRandomForest import train_rf_model, evaluate_model, compare_models
from sklearn.preprocessing import LabelEncoder
import numpy as np
# Load CSV files for the Yeast dataset.
original_train = pd.read_csv("OutputTrainingSets/original_trainVAEForest.csv")
augmented_train = pd.read_csv("OutputTrainingSets/augmented_trainVAEForest.csv")
test_set = pd.read_csv("OutputTrainingSets/test_setVAEForest.csv")
# Define the feature columns and target.
features = numeric_features
categorical_features = ["Cover_Type"]
# Re-map the target column so that labels are contiguous.
le = LabelEncoder()
original_train[target] = le.fit_transform(original_train[target])
augmented_train[target] = le.transform(augmented_train[target])
test_set[target] = le.transform(test_set[target])
# Train a Random Forest model on the original training dataset.
model_original = train_rf_model(original_train, features, target)
metrics_original = evaluate_model(model_original, test_set, features, target)
# Train a Random Forest model on the augmented training dataset.
model_augmented = train_rf_model(augmented_train, features, target)
metrics_augmented = evaluate_model(model_augmented, test_set, features, target)
unique_labels = np.sort(metrics_original['y_test'].unique())
# Now, inverse transform these labels using the same LabelEncoder 'le' used earlier
target_names = [str(x) for x in le.inverse_transform(unique_labels)]
# Compare the performance of the two models.
compare_models(metrics_original, metrics_augmented, target_names)
"""
In [ ]:
"""
import pandas as pd
from MachineLearningModels.MultiClassKNN import train_knn_model, evaluate_model, compare_models
from sklearn.preprocessing import LabelEncoder
import numpy as np
# Load CSV files for the Yeast dataset.
original_train = pd.read_csv("OutputTrainingSets/original_trainVAEForest.csv")
augmented_train = pd.read_csv("OutputTrainingSets/augmented_trainVAEForest.csv")
test_set = pd.read_csv("OutputTrainingSets/test_setVAEForest.csv")
# Define the feature columns and target.
features = numeric_features
categorical_features = ["Cover_Type"]
# Re-map the target column so that labels are contiguous.
le = LabelEncoder()
original_train[target] = le.fit_transform(original_train[target])
augmented_train[target] = le.transform(augmented_train[target])
test_set[target] = le.transform(test_set[target])
# Train a KNN model on the original training dataset.
model_original = train_knn_model(original_train, features, target)
metrics_original = evaluate_model(model_original, test_set, features, target)
# Train a KNN model on the augmented training dataset.
model_augmented = train_knn_model(augmented_train, features, target)
metrics_augmented = evaluate_model(model_augmented, test_set, features, target)
unique_labels = np.sort(metrics_original['y_test'].unique())
# Now, inverse transform these labels using the same LabelEncoder 'le' used earlier
target_names = [str(x) for x in le.inverse_transform(unique_labels)]
# Compare the performance of the two models.
compare_models(metrics_original, metrics_augmented, target_names)
"""
In [ ]:
In [ ]:
In [ ]:
In [ ]: